NL1006174C2 - Error decoding method as well as device for decoding. - Google Patents

Error decoding method as well as device for decoding. Download PDF

Info

Publication number
NL1006174C2
NL1006174C2 NL1006174A NL1006174A NL1006174C2 NL 1006174 C2 NL1006174 C2 NL 1006174C2 NL 1006174 A NL1006174 A NL 1006174A NL 1006174 A NL1006174 A NL 1006174A NL 1006174 C2 NL1006174 C2 NL 1006174C2
Authority
NL
Netherlands
Prior art keywords
signal
error
words
erase
signals
Prior art date
Application number
NL1006174A
Other languages
Dutch (nl)
Inventor
Wei-Hung Huang
Original Assignee
United Microelectronics Corp
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
Priority to GB9707768A priority Critical patent/GB2324390B/en
Priority to GB9716661A priority patent/GB2324391B/en
Priority claimed from GB9707768A external-priority patent/GB2324390B/en
Application filed by United Microelectronics Corp filed Critical United Microelectronics Corp
Priority to NL1006174A priority patent/NL1006174C2/en
Application granted granted Critical
Publication of NL1006174C2 publication Critical patent/NL1006174C2/en

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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic 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

Description

Foutdecoderingswerkwijze alsmede apparaat voor het decoderenError decoding method as well as device for decoding

ACHTERGROND VAN DE UITVINDINGBACKGROUND OF THE INVENTION

Gebied van de uitvindingField of the invention

De uitvinding heeft algemeen betrekking op een werk-5 wijze en een apparaat voor het uitvoeren van foutdecodering van digitale data met gebruikmaking van Reed-Solomon codes. Meer in het bijzonder heeft de uitvinding betrekking op een apparaat voor het decoderen van de waarde en de lokatie van foutwoorden in digitale data met gebruikmaking van Reed-10 Solomon codes door een reeks van rekenkundige produktsombewer-kingen, zonder een machtsverheffingsberekening.The invention generally relates to a method and an apparatus for performing error decoding of digital data using Reed-Solomon codes. More particularly, the invention relates to an apparatus for decoding the value and location of error words in digital data using Reed-10 Solomon codes through a series of arithmetic product calculations, without a power-up calculation.

Technische achtergrondTechnical background

Reed-Solomon codes (hieronder afgekort als RS) zijn 15 zeer belangrijk in de communicatie voor het behoud van data en functioneren voor het continu corrigeren van fouten in bytes van digitale data.Reed-Solomon codes (abbreviated below as RS) are very important in communication for data retention and function for continuously correcting errors in bytes of digital data.

Algemeen gesproken bestaan er twee verschillende soorten circuits in het ontwerp van RS code decoders. Eén is 20 van het pijplijntype en de andere is van het op een processor gebaseerde programmabesturingstype. RS code decoders van het pijplijntype worden typisch toegepast in systemen die dienen te werken met hoge snelheid en in echte tijd. De circuits van de RS code decoders van het pijplijntype zijn dan ook complex 25 en duur hetgeen een verspilling betekent van grondstoffen en geld bij een systeem dat slechts een bescheiden snelheid vereist. De RS code decoder van het op een processor gebaseerde programmabesturingstype voert herhaalde berekeningen uit met gebruikmaking van een rekenkundige/logische eenheid 30 (arithmetic logic unit, ALU) onder programmabesturing waardoor de complexiteit en de kosten van het circuit van de RS-code decoder worden verminderd. Er bestaan duidelijke verschillen tussen RS code decoders van het pijplijntype en van het op een processor gebaseerde programmabesturingstype.Generally speaking, two different types of circuits exist in the design of RS code decoders. One is the pipeline type and the other is the processor-based program control type. Pipeline type RS code decoders are typically used in high speed, real time systems. The circuits of the pipeline type RS code decoders are therefore complex and expensive, which means a waste of resources and money on a system that requires only modest speed. The processor-based program control type RS code decoder performs repetitive calculations using an arithmetic logic unit (ALU) under program control, reducing the complexity and cost of the RS code decoder circuit . There are clear differences between pipeline type RS code decoders and processor-based program control type.

35 Voor RS codes zijn de berekeningen voor de decodering bij aanwezigheid van twee of meer fouten te midden van de 1006174 2 overgedragen woorden te gecompliceerd om op geschikte wijze gebruik te kunnen maken van een RS code decoder van het op een processor gebaseerde programmabesturingstype. Het conventionele systeem van dit type voor het decoderen van twee foutwoor-5 den wordt evenwel gebruikt en wordt hieronder geïllustreerd: Een RS code kan worden gedefinieerd als RSm(n,k). De inputaansluiting van de RS code decoder ontvangt n symbolen, waarbij ieder symbool m bits bevat. Na foutcorrectie worden k datasymbolen verstuurd vanuit de decoder.For RS codes, the decoding calculations in the presence of two or more errors among the 1006174 2 transmitted words are too complicated to suitably use a processor-based program control type RS code decoder. However, the conventional system of this type for decoding two error words is used and is illustrated below: An RS code can be defined as RSm (n, k). The input connector of the RS code decoder receives n symbols, each symbol containing m bits. After error correction, k data symbols are sent from the decoder.

10 RSm(n,k) kan worden gedefinieerd als m het aantal bits van ieder ingevoerd symbool, n<(2m-l) de codelengte van de RS codes, k het aantal informatiewoorden in RS codes, 15 d = n-k+1 de Hamming afstand in RS codes en 'd-ll t= —— het maximum aantal foutwoorden dat wordt gedeco deerd door de decoder.10 RSm (n, k) can be defined as m the number of bits of each entered symbol, n <(2m-l) the code length of the RS codes, k the number of information words in RS codes, 15 d = n-k + 1 the Hamming distance in RS codes and d-ll t = - the maximum number of error words decoded by the decoder.

Bij een RS code decoder die twee foutwoorden kan de-20 coderen is derhalve t = 2, d=2t+l=5, k=n+l-5=n-4 en RSm(n,k) kan worden gewijzigd tot RSm(n,n-4). Voor RSm(n,n-4) codes kan de genererende polynoom worden voorgesteld als: g(x) = (x-l) (x-a) (x-a2) (x-a3) 25Therefore, with an RS code decoder that can decode two error words, t = 2, d = 2t + l = 5, k = n + l-5 = n-4 and RSm (n, k) can be changed to RSm (n, n-4). For RSm (n, n-4) codes, the generating polynomial can be represented as: g (x) = (x-l) (x-a) (x-a2) (x-a3) 25

Aangenomen kan worden dat in de n symbolen v foutwoorden aanwezig zijn die zich bevinden op lokaties bij 11# 12, 13, 14, ....... lv en waarvan de waardes respectievelijk bedragen YL, Y2, Y3, y4, ....... Yv. Om het principe van het decode- 30 ren van de RS codes hieronder toe te lichten wordt, indien de lokatie 1± bekend is voordat de n symbolen worden gedecodeerd, het foutwoord gedefinieerd als een "uitwissing" ("erasure") en wanneer de lokatie onbekend is voordat de n symbolen worden gedecodeerd wordt het foutwoord gedefinieerd als een "fout" 35 ("error") .It can be assumed that the n symbols v contain error words which are located at locations at 11 # 12, 13, 14, ....... lv and whose values are respectively YL, Y2, Y3, y4, .. ..... Yv. To explain the principle of decoding the RS codes below, if the location 1 ± is known before the n symbols are decoded, the error word is defined as an "erasure" and when the location unknown before decoding the n symbols, the error word is defined as an "error" ("error").

Bij RS codes met een Hamming afstand d=5 kunnen p foutwoorden en q uitwiswoorden worden gedetecteerd indien p en q voldoen aan de volgende betrekking: 1006.74 3 2p + q < d-1 = 5-1 = 4 (1)For RS codes with a Hamming distance d = 5, p error words and q erasure words can be detected if p and q satisfy the following relationship: 1006.74 3 2p + q <d-1 = 5-1 = 4 (1)

Wanneer voorts XL = a11 met 1 < i < v, 5 dan zijn de syndromen: (2) Η dat wil zeggen dat de syndromen S0, Slf S2, S3 kunnen worden 10 verkregen met de betreffende combinaties van Xj en waarbij: v : het aantal uitwiswoorden en foutwoorden, v=p+q, p : het aantal foutwoorden, q : het aantal uitwiswoorden, 15 Xj : Xj=alj en 1^ is de lokatie van de j-de fout,Furthermore, if XL = a11 with 1 <i <v, 5 then the syndromes are: (2) Η ie the syndromes S0, Slf S2, S3 can be obtained with the corresponding combinations of Xj and where: v: the number of erase words and error words, v = p + q, p: the number of error words, q: the number of erase words, 15 Xj: Xj = alj and 1 ^ is the location of the jth error,

Sk : syndroom,Sk: syndrome,

Yj : de j-de foutwaarde en d : de Hamming afstand van de code.Yj: the j-th error value and d: the Hamming distance of the code.

20 Volgens verschillende US octrooischriften, bijvoor beeld US-A-4 852 099 (Ozaki) en US-A-4 677 622 (Okamoto en anderen) is het volgende bekend:According to various US patents, for example US-A-4 852 099 (Ozaki) and US-A-4 677 622 (Okamoto et al.), The following is known:

Als p = 0 en q = 4 dan is: 25 γ _ Si + (*. + *2 + X3)S2 + (XtX2 + X2X3 4- XJfö + XtX2XJS0 4 (^+^)(^4+^2)(^3 + ^4)If p = 0 and q = 4 then: 25 γ _ Si + (*. + * 2 + X3) S2 + (XtX2 + X2X3 4- XJfö + XtX2XJS0 4 (^ + ^) (^ 4 + ^ 2) ( ^ 3 + ^ 4)

Wanneer q = 3 en p = 0 dan is: 1 (Χ, + Χ,ΚΧ,+Χ,)When q = 3 and p = 0 then: 1 (Χ, + Χ, ΚΧ, + Χ,)

Als q = 2 en p = 0 dan is: r - (s) ! x,+x, 5 35If q = 2 and p = 0 then: r - (s)! x, + x, 5 35

Als q = 1 en p = 0 dan is:If q = 1 and p = 0 then:

Yx=S0 (6) 1006174 4Yx = S0 (6) 1006174 4

Wanneer het aantal uitwiswoorden q een tot drie bedraagt wordt het aantal foutwoorden p dat kan worden behandeld gelijk aan nul of één in overeenstemming met vergelijking (1). Om vast te stellen of de werkelijke waarde van p gelijk is aan 5 nul of één of groter dan één (in de situatie dat p groter is dan één kan de decoder geen foutwoord detecteren uit n symbolen) moet worden verwezen naar een verzameling van Forney syndromen.When the number of erase words q is one to three, the number of error words p that can be treated becomes zero or one in accordance with equation (1). To determine if the actual value of p is equal to zero or one or greater than one (in the situation where p is greater than one, the decoder cannot detect an error word from n symbols), refer to a set of Forney syndromes .

Als q gelijk is aan één dan zijn de Forney syndromen 10 als volgt gedefinieerd:If q equals one then the Forney syndromes 10 are defined as follows:

Ti=Sl+S0X1 T ^Sj+SA (7) T3=S3+S2X3 15Ti = Sl + S0X1 T ^ Sj + SA (7) T3 = S3 + S2X3 15

Als q gelijk is aan twee dan zijn de Forney syndromen gedefinieerd als: T1=S2+(X1+X2)S1+X1X2S0 (8) 20 T2=S3+(Xx+X2) S2+X1X2S1If q equals two then the Forney syndromes are defined as: T1 = S2 + (X1 + X2) S1 + X1X2S0 (8) 20 T2 = S3 + (Xx + X2) S2 + X1X2S1

Als q gelijk is aan drie dan zijn de Forney syndromen gedefinieerd als: 25 T1=S3+ (X^Xj+Xj) S2+ (X1X2+X2X3+X3X1) β,+Χ,Χ-,Χ^ (9)If q equals three then the Forney syndromes are defined as: 25 T1 = S3 + (X ^ Xj + Xj) S2 + (X1X2 + X2X3 + X3X1) β, + Χ, Χ-, Χ ^ (9)

In het geval dat q gelijk is aan één of twee kan de waarde van p worden bepaald met gebruikmaking van de onderstaande regels: 30 (1) Als alle Forney syndromen gelijk zijn aan nul is de waarde van p gelijk aan nul.In case q equals one or two, the value of p can be determined using the rules below: 30 (1) If all Forney syndromes are equal to zero, the value of p equals zero.

(2) Wanneer alle Forney syndromen niet gelijk zijn aan nul is de waarde van p gelijk aan één.(2) When all Forney syndromes are not equal to zero, the value of p equals one.

(3) Als ten minste één van de Forney syndromen gelijk 35 is aan nul en ten minste één van de Forney syndromen niet gelijk is aan nul dan kan de decoder geen enkel foutwoord corrigeren uit n symbolen.(3) If at least one of the Forney syndromes is equal to zero and at least one of the Forney syndromes is not equal to zero, the decoder cannot correct any error word from n symbols.

Voorts, wanneer q gelijk is aan drie en wanneer het Forney syndroom gelijk is aan nul, dan kan de decoder fout-40 woorden corrigeren uit n symbolen. Wanneer q gelijk is aan 100 6 j 74 5 drie en wanneer het Forney syndroom niet gelijk is aan nul dan kan de decoder geen fouten corrigeren uit n symbolen.Furthermore, when q equals three and when Forney syndrome equals zero, the decoder can correct error-40 words from n symbols. When q equals 100 6 j 74 5 three and when Forney syndrome is not equal to zero then the decoder cannot correct errors from n symbols.

Wanneer p gelijk is aan één kunnen de lokaties van de onbekende foutwoorden worden bepaald met de onderstaande ver-5 gelijkingen: als q = 1 en p = 1 dan is: S2+S.X.When p equals one, the locations of the unknown error words can be determined using the equations below: if q = 1 and p = 1 then: S2 + S.X.

= (10) 10 als q = 2 en p = 1 dan is: _ 5,+5,(¾ + ^,) + 5,¾¾ 3 5,+5,(^,+^,) + 5,¾¾ 15 Uit de bovenstaande vergelijkingen (3) tot (11) kan uitsluitend de waarde van p worden bepaald wanneer de waarde van q niet gelijk is aan nul. In de situatie dat q gelijk is aan nul wordt de waarde van p bepaald door het evalueren van de volgende grootheden: 20= (10) 10 if q = 2 and p = 1 then: _ 5, + 5, (¾ + ^,) + 5, ¾¾ 3 5, + 5, (^, + ^,) + 5, ¾¾ 15 From the above equations (3) to (11), the value of p can only be determined when the value of q is not equal to zero. In the situation where q equals zero, the value of p is determined by evaluating the following quantities: 20

Sa = S& + S0S2 SB = S2S2 + SlS3 (12)Sa = S & + S0S2 SB = S2S2 + SlS3 (12)

Sc = S0S3 + SjSj 25 (1) Wanneer de drie grootheden alle gelijk zijn aan nul, dan is p gelijk aan één.Sc = S0S3 + SjSj 25 (1) When the three quantities are all equal to zero, then p is equal to one.

(2) Wanneer de drie grootheden alle niet gelijk zijn aan nul, dan is p gelijk aan twee.(2) If the three quantities are not equal to zero, then p is equal to two.

(3) Wanneer een of meer van de grootheden gelijk is 30 aan nul en een of meer van de grootheden niet gelijk is aan nul dan kan de decoder de fouten in n symbolen niet corrigeren .(3) When one or more of the quantities is equal to zero and one or more of the quantities are not equal to zero, the decoder cannot correct the errors in n symbols.

In situatie (1), dat wil zeggen q=0 en p=l, geldt: S.In situation (1), i.e. q = 0 and p = 1, holds: S.

35 X, =-r (13) *->035 X, = -r (13) * -> 0

In situatie (2), dat wil zeggen q=0 en p=2, geldt: 1006174 6 S0S-> + S,S-y χ'+χ>=Μ^γ2 <14) S2S2+S.S, χ'·χ'=Μτ^ (15) 5 Uit vergelijkingen (3) tot (13) kunnen XL en YL worden bepaald met behulp van drie soorten berekeningen, zoals optellen, vermenigvuldigen en inverteren, behalve in het geval dat (p,q)=(2,0). (Wanneer q niet gelijk is aan nul, onder de voorwaarde dat i<q, kan X£ worden verkregen terwijl de n symbolen 10 worden ingevoerd en kunnen de waarden van Yd en 1* worden verkregen door de additionele berekening van een logaritme.)In situation (2), i.e. q = 0 and p = 2, holds: 1006 174 6 S0S-> + S, Sy χ '+ χ> = Μ ^ γ2 <14) S2S2 + SS, χ' · χ '= Μτ ^ (15) 5 From equations (3) to (13), XL and YL can be determined using three types of calculations, such as addition, multiplication and inversion, except where (p, q) = (2.0 ). (When q is not equal to zero, provided that i <q, X £ can be obtained while the n symbols 10 are inputted, and the values of Yd and 1 * can be obtained by the additional calculation of a logarithm.)

Onder de voorwaarde dat p=2 en q=0 zijn verschillende mogelijkheden aanwezig voor het oplossen van de waardes van X1 en X2 met behulp van vergelijking (14) en vergelijking (15). De 15 gebruikelijke werkwijze is bijvoorbeeld het uitvoeren van een "doorzoeking volgens Chien" (Chien's Search). In de werkwijze die gebruik maakt van de doorzoeking volgens Chien wordt eerst Xx een tevoren bepaalde waarde gegeven en wordt de waarde van XL+X2 ingesteld als SUM. Op deze wijze wordt X2=SUM-Xx verkregen 20 uit vergelijking (14). Daarna worden X2 en X2 in vergelijking (15) gesubstitueerd. Wanneer de waarde aan de linkerzijde van de vergelijking niet gelijk is aan de waarde van de rechterzijde wordt aan Xx een andere tevoren bepaalde waarde gegeven, met verwijzing naar de voorgaande waarde. Door de waarde van Xx 25 herhaaldelijk in te stellen kan de waarde van X2 worden verkregen. De snelheid van decoderen is evenwel zeer laag gedurende verschillende herhalingen van de berekening waarin verschillende waarden van Xx en X2 worden gesubstitueerd in de decoder van het op een processor gebaseerde programmabesturingstype.Provided that p = 2 and q = 0, there are several possibilities for solving the values of X1 and X2 using equation (14) and equation (15). The usual method is, for example, to perform a "search according to Chien" (Chien's Search). In the method using the Chien search, Xx is first given a predetermined value and the value of XL + X2 is set as SUM. In this way, X2 = SUM-Xx is obtained from equation (14). Then X2 and X2 are substituted in equation (15). When the value on the left side of the equation is not equal to the value on the right side, Xx is given another predetermined value, with reference to the previous value. By repeatedly setting the value of Xx 25, the value of X2 can be obtained. However, the decoding rate is very low during various iterations of the calculation in which different values of Xx and X2 are substituted in the processor-based program control type decoder.

30 De werkwijze heeft derhalve een negatieve invloed op het gehele systeem en is niet uitvoerbaar voor het berekenen van de werkelijke waardes van Xx en X2.The method therefore has a negative impact on the entire system and is not feasible for calculating the actual values of Xx and X2.

35 SAMENVATTING VAN DE UITVINDING35 SUMMARY OF THE INVENTION

Het is derhalve een doel van de uitvinding om een werkwijze te verschaffen voor het uitvoeren van foutdecodering van digitale data met gebruikmaking van een Reed-Solomon code 1006174 7 die nuttig is voor het correct en snel decoderen van de waarde en de lokaties van twee fouten in digitale data gedefinieerd als RSm(n,n-4) van de Reed-Solomon code door een reeks van rekenkundige produktsombewerkingen, met gebruikmaking van optel-5 ling, vermenigvuldiging, deling, verschuiving/logaritme en lo-katie.It is therefore an object of the invention to provide a method for performing error decoding of digital data using a Reed-Solomon code 1006174 7 which is useful for correctly and quickly decoding the value and locations of two errors in digital data defined as RSm (n, n-4) of the Reed-Solomon code by a series of arithmetic product sum operations, using addition, multiplication, division, shift / logarithm and location.

Een ander doel van de uitvinding is het verschaffen van een apparaat voor het uitvoeren van een dergelijke decode-ringswerkwij ze.Another object of the invention is to provide an apparatus for performing such a decoding method.

10 In overeenstemming met de uitvinding wordt dit doel bereikt voor het verschaffen van een foutdecoderingswerkwijze voor het decoderen van syndroomsignalen met gebruikmaking van Reed-Solomon codes waarbij de Reed-Solomon code is gedefinieerd als RSm(n,k) waarbij m het aantal bits is van ieder syn-15 droom, n de lengte is van Reed-Solomon codes en k de lengte is van informatiewoorden in de Reed-Solomon codes waarbij de Reed-Solomon codes p foutwoorden bevatten en q uitwiswoorden, n<(2m-l) en 2p+q<d-l en waarbij d de Hamming afstand is. De foutdecoderingswerkwijze omvat het decoderen van de foutwoor-20 den en de uitwiswoorden die aanwezig zijn in ieder syndroom-signaal en het bepalen van de getallen p en q.In accordance with the invention, this object is achieved to provide an error decoding method for decoding syndromic signals using Reed-Solomon codes where the Reed-Solomon code is defined as RSm (n, k) where m is the number of bits of each dream, n is the length of Reed-Solomon codes and k is the length of information words in the Reed-Solomon codes, where the Reed-Solomon codes contain p error words and q erase words, n <(2m-l) and 2p + q <dl and where d is the Hamming distance. The error decoding method includes decoding the error words and the erase words contained in each syndrome signal and determining the numbers p and q.

Twee vergelijkingen X:2 = a21* en X22 = a2*2 worden geëvalueerd voor een berekening van de lokatie wanneer in ieder syndroomsignaal twee foutwoorden aanwezig zijn en geen uitwis-25 woorden waarbij de syndroomsignalen die twee fouten bezitten gedefinieerd als: 2Two equations X: 2 = a21 * and X22 = a2 * 2 are evaluated for a location calculation when two error words are present in each syndrome signal and no erase words with the syndrome signals having two errors defined as: 2

Sk = Σ X)Yj 0<k<3 7 = 1 30 waarbij Χλ = ah en X2 = ah , 11 en 12 de lokaties definiëren van de twee foutwoorden en en Y2 waardes zijn van de foutwoorden: li en 12 worden geëvalueerd door een berekening van de logaritme van a2h en a2h en een berekening van de ver-35 schuiving enSk = Σ X) Yj 0 <k <3 7 = 1 30 where Χλ = ah and X2 = ah, 11 and 12 define the locations of the two error words and and Y2 are values of the error words: li and 12 are evaluated by a calculation of the logarithm of a2h and a2h and a calculation of the shift and

Yj en Y2 worden verkregen door een reeks van rekenkundige produkt/somberekeningen volgens Xx2 = a21i en X22 = a2h _Yj and Y2 are obtained by a series of arithmetic product / sum calculations according to Xx2 = a21i and X22 = a2h _

Bij de bovengenoemde foutdecoderingswerkwijze kan, wanneer geen uitwiswoorden aanwezig zijn in syndroomsignalen, 100β.7a 8 het aantal p foutwoorden worden bepaald door de drie grootheden S1S1+S0S2, SjSa+S^j en SqSj+S^. Wanneer geen van de drie grootheden gelijk is aan 0 dan is p gelijk aan 1. Wanneer alle drie grootheden gelijk zijn aan 0 dan is p gelijk aan 1. Wan-5 neer ten minste één van de drie grootheden gelijk is aan 0 en ten minste één van de drie grootheden niet gelijk is aan 0 dan kan p niet worden bepaald.In the above error decoding method, when no erase words are present in syndrome signals, the number of p error words can be determined by the three quantities S1S1 + S0S2, SjSa + S ^ j and SqSj + S ^. If none of the three quantities is equal to 0, then p is equal to 1. If all three quantities are equal to 0, then p is equal to 1. When -5 if at least one of the three quantities is equal to 0 and at least if one of the three quantities is not equal to 0, then p cannot be determined.

Bij de bovengenoemde foutdecoderingswerkwijze wordt verder de berekening van de lokatie uitgevoerd door evaluatie 10 van de volgende vergelijking: cc1 + a_i -+ a1 l<i<2ra-lIn the above error decoding method, the location calculation is further performed by evaluating the following equation: cc1 + a_i - + a1 l <i <2ra-l

Wanneer twee foutwoorden aanwezig zijn en geen uit-15 wiswoorden in ieder syndroomsignaal, dan geldt: Y y _ 5A + ^'βΐ ' 2 5,5,+¾ x x 1 2 5,5,+¾ 20If two error words are present and no out-15 erasms are present in each syndrome signal, then Y y _ 5A + ^ 'βΐ' 2 5.5, + ¾ x x 1 2 5.5, + ¾ 20

De lokaties 11 en 12 van de foutwoorden kunnen dus worden bepaald door berekening van de lokatie in overeenstemming met de volgende vergelijkingen: 25 X!2 = a21i X22 = a212 en 12 en 12 worden als volgt bepaald: 30 i bij afwezigheid van verschuiving . i al ~2 bij aanwezigheid van verschuiving wanneer i even is 35 / + (2--1) /-1 2 +—j- wanneer verschuiving aanwezig is en i oneven is 1006/74 9Thus, the locations 11 and 12 of the error words can be determined by calculating the location in accordance with the following equations: 25 X! 2 = a21i X22 = a212 and 12 and 12 are determined as follows: 30 i in the absence of shift. i al ~ 2 in the presence of shift when i is even 35 / + (2--1) / -1 2 + —j- when shift is present and i is odd 1006/74 9

De foutdecoderingswerkwijze volgens de uitvinding kan worden uitgevoerd door het verschaffen van een apparaat voor het decoderen van foutwoorden en uitwiswoorden die aanwezig zijn in verzonden woordsignalen met gebruikmaking van Reed-5 Solomon codes verschaft vanuit een extern systeem. Een derge-lijk apparaat zal een syndroomgenerator omvatten om te worden gekoppeld met het externe systeem voor het ontvangen van de verzonden woordsignalen daaruit en het genereren van syndroom-signalen.The error decoding method according to the invention can be performed by providing a device for decoding error words and erase words contained in transmitted word signals using Reed-5 Solomon codes provided from an external system. Such a device will include a syndrome generator to be coupled to the external system for receiving the transmitted word signals therefrom and generating syndrome signals.

10 Een uitwisteller dient te worden gekoppeld aan het externe systeem voor het ontvangen van de uitwiswoorden. Een uitwistelwaarde die is opgeslagen in de uitwisteller wordt met één geïncrementeerd iedere keer dat een uitwiswoord wordt gedetecteerd.10 An erase counter must be linked to the external system to receive the erase words. An erase value stored in the erase counter is incremented by one every time an erase word is detected.

15 Registers worden aan de syndroomgenerator gekoppeld en dienen te worden gekoppeld met het externe systeem voor het ontvangen van de syndroomsignalen en de uitwiswoorden en voor het opslaan van de syndroomsignalen en de uitwiswoorden op tevoren bepaalde lokaties. Een rekenkundig/logisch circuit (ALU) 20 wordt gekoppeld met de registers voor het uitlezen van de syndroomsignalen en de uitwiswoorden die zijn opgeslagen in de registers en voor het uitvoeren van een tevoren bepaalde bewerking teneinde een terugkoppelsignaal te verschaffen aan de registers en een deductief signaal te genereren.Registers are coupled to the syndrome generator and are to be coupled to the external system for receiving the syndrome signals and the erase words and for storing the syndrome signals and the erase words at predetermined locations. An arithmetic / logic circuit (ALU) 20 is coupled to the registers for reading out the syndrome signals and the erase words stored in the registers and performing a predetermined operation to provide a feedback signal to the registers and a deductive signal to generate.

25 Een vergelijker is gekoppeld met de rekenkundige lo gische eenheid voor het ontvangen van het deductieve signaal, het uitvoeren van een vergelijkingsbewerking en het vervolgens uitvoeren van een vergelijkingssignaal. Een programmabestu-ringseenheid is gekoppeld met de vergelijker en de uitwistel-30 Ier voor het ontvangen van het vergelijkingssignaal vanuit de vergelijker, en leest de uitwistellerwaarde uit die is opgeslagen in de uitwisteller en voert een programmabesturingssig-naal uit. Een instructieregister is gekoppeld met de program-mabesturingseenheid dat wordt ontvangen van het programmabe-35 sturingssignaal in responsie waarop het een programma- instructiesignaal genereert en tevens het terugkoppelsignaal uitvoert naar de programmabesturingseenheid. In responsie op de ontvangst van het terugkoppelsignaal verandert de programmabesturingseenheid het programmabesturingsignaal.A comparator is coupled to the arithmetic logic unit for receiving the deductive signal, performing a comparison operation, and then outputting a comparison signal. A program control unit is coupled to the comparator and the erasure receiver to receive the comparison signal from the comparator, and reads the erasure counter value stored in the erasure counter and outputs a program control signal. An instruction register is coupled to the program control unit received from the program control signal in response to which it generates a program instruction signal and also outputs the feedback signal to the program control unit. In response to the reception of the feedback signal, the program control unit changes the program control signal.

100 6 i 7 4 10100 6 i 7 4 10

Een vertolker ("interpreter") is gekoppeld met het instructieregister voor het ontvangen van het programma-instructiesignaal en voert als responsie een registeradressig-naal en een ALU vrijgavesignaal uit. De rekenkundige/logische 5 eenheid (ALU) leest de syndroomsignalen in en leest tevens de uitwiswoorden uit die zijn opgeslagen in de registers in overeenstemming met het registeradresseringssignaal teneinde fout-woorden in de verzonden woordsignalen te decoderen.An interpreter ("interpreter") is coupled to the instruction register to receive the program instruction signal and outputs a register address signal and an ALU enable signal in response. The arithmetic / logic unit (ALU) reads in the syndrome signals and also reads out the erase words stored in the registers in accordance with the register addressing signal to decode error words in the transmitted word signals.

De rekenkundige/logische eenheid omvat bovendien een 10 invertor, een vermenigvuldig/optelcircuit, een verschui- vings/logaritmecircuit voor het uitvoeren van verschuiving en logaritmische berekeningen en een locator voor het uitvoeren van een lokaliseringsberekening. De invertor voert een inver-teringsberekening uit op het syndroomsignaal en het vermenig-15 vuldigings/optelcircuit voert een optelberekening en een ver-menigvuldigingsberekening uit op de syndroomsignalen. Het schuif/logaritmecircuit voert een logaritmische berekening uit van de syndroomsignalen en een verschuivingsberekening op het resultaat van de logaritmische berekening volgens het ALU 20 vrijgavesignaal. De locator voert een berekening van de loka-tie uit.The arithmetic / logic unit additionally includes an inverter, a multiplication / addition circuit, an offset / logarithm circuit for performing offset and logarithmic calculations, and a locator for performing a location calculation. The inverter performs an inversion calculation on the syndrome signal, and the multiplication / addition circuit performs an addition calculation and a multiplication calculation on the syndrome signals. The shift / logarithm circuit performs a logarithmic calculation of the syndrome signals and a shift calculation on the result of the logarithmic calculation according to the ALU 20 enable signal. The locator performs a location calculation.

De werkwijze wordt selectief in het rekenkundige/logische circuit uitgevoerd door het bedienen van de invertor, het vermenigsvuldigings/optelcircuit, het schuif/logarit-25 mecircuit en de locator teneinde het terugkoppelsignaal en het deductief signaal te genereren.The method is selectively performed in the arithmetic / logic circuit by operating the inverter, the multiplication / addition circuit, the shift / logarithm circuit and the locator to generate the feedback signal and the deductive signal.

KORTE BESCHRIJVING VAN DE TEKENINGEN 30BRIEF DESCRIPTION OF THE DRAWINGS 30

Andere doelen, eigenschappen en voordelen van de uitvinding zullen duidelijk worden uit de nu volgende gedetailleerde beschrijving van de niet-liminatieve voorkeursuitvoeringsvorm met verwijzing naar de bijgevoegde tekeningen, waar-35 in: figuur 1 een circuitblokschema is van de voorkeursuitvoeringsvorm van een decoderingsapparaat volgens de uitvinding, figuur 2 een circuitblokschema is van het 40 schuif/logaritmecircuit bij de voorkeursuitvoeringsvorm en i00 6/ (4 11 figuur 3 een stroomschema is van de voorkeursuitvoeringsvorm van de decoderingswerkwijze volgens de uitvinding.Other objects, features and advantages of the invention will become apparent from the following detailed description of the preferred non-liminative embodiment with reference to the accompanying drawings, in which: Figure 1 is a circuit block diagram of the preferred embodiment of a decoding apparatus according to the invention Figure 2 is a circuit block diagram of the shift / logarithm circuit in the preferred embodiment, and Figure 6 / (Figure 11 is a flow chart of the preferred embodiment of the decoding method according to the invention.

5 GEDETAILLERDE BESCHRIJVING VAN DE UITVINDINGDETAILED DESCRIPTION OF THE INVENTION

Figuur 1 toont een decoderingsapparaat 200 volgens de voorkeursuitvoeringsvorm van de uitvinding en omvat een syn-droomgenerator 210, registers 220, een rekenkundig/logisch 10 circuit 230, een vertolker 240, een vergelijker 250, een in-structieregister 260, een programmabesturingseenheid 270 en een uitwisteller 280. Het rekenkundige/logische circuit 230 omvat een invertor 232, een vermenigvuldig/optelcircuit 234, een verschuivings/logaritmisch circuit 236 en een locatorcir-15 cuit 238.Figure 1 shows a decoding apparatus 200 according to the preferred embodiment of the invention and comprises a dream generator 210, registers 220, an arithmetic / logic circuit 230, an interpreter 240, a comparator 250, an instruction register 260, a program controller 270 and a erase counter 280. The arithmetic / logic circuit 230 includes an inverter 232, a multiplication / addition circuit 234, a shift / logarithmic circuit 236, and a locator circuit 238.

Wanneer een extern systeem 100 aanvangt met het versturen van signalen, worden verstuurde woordsignalen naar de syndroomgenerator 210 verstuurd via een lijn 20 en worden uit-wiswoordsignalen verstuurd naar de registers 220 en de uitwis-20 teller 280 via een lijn 32. De syndroomgenerator 210 genereert syndroomsignalen uit de verzonden woordsignalen in overeenstemming met het format van RS codes. Syndroomsignalen worden uitgevoerd naar de registers 220 via een lijn 12. De registers 220 slaan tijdelijk ieder syndroomsignaal op en ieder uitwis-25 woordsignaal in overeenkomstige adressen in zich daarin bevindende tevoren bepaalde registers. Iedere keer dat de uitwisteller 280 een uitwiswoordsignaal ontvangt via de lijn 32 wordt een uitwistelwaarde die is opgeslagen in de uitwisteller 280 met één geïncrementeerd teneinde de som te tellen van alle 30 uitwiswoordsignalen. De uitwistelwaarde wordt verstuurd naar de programmabesturingseenheid 270 via een lijn 34.When an external system 100 starts to transmit signals, transmitted word signals are sent to the syndrome generator 210 via a line 20 and erase word signals are sent to the registers 220 and the erase counter 280 via a line 32. The syndrome generator 210 generates syndromic signals from the transmitted word signals in accordance with the format of RS codes. Syndrome signals are output to registers 220 via a line 12. Registers 220 temporarily store each syndrome signal and erase word signal at corresponding addresses in predetermined registers contained therein. Each time the erase counter 280 receives an erase word signal through the line 32, an erase value stored in the erase counter 280 is incremented by one to count the sum of all 30 erase word signals. The cancellation value is sent to the program controller 270 via a line 34.

Wanneer het apparaat 200 in werking is ontvangt het rekenkundige/logische circuit 230 via de respectievelijke lijnen 13, 14 en 15syndroomsignalen en uitwiswoordsignalen die 35 zijn opgeslagen in de registers 220. Na een reeks van selectieve berekeningen in het rekenkundige/logische circuit 230 wordt een terugkoppelsignaal afgegeven aan de registers 220 via de lijn 16 en wordt aldaar opgeslagen op een tevoren bepaalde lokatie. Op hetzelfde moment wordt een deductief sig-40 naai uitgevoerd naar de vergelijker 250 voor een vergelij- 1006174 12 kingsberekening. Daarna wordt een vergelijkingssignaal uitgevoerd naar een programmabesturingseenheid 270 via de lijn 22.When the device 200 is in operation, the arithmetic / logic circuit 230 receives, through the respective lines 13, 14 and 15, syndrome signals and erase word signals stored in the registers 220. After a series of selective calculations in the arithmetic / logic circuit 230, a feedback signal issued to registers 220 via line 16 and stored there at a predetermined location. At the same time, a deductive sig-40 sewing is performed to comparator 250 for a comparison calculation. Then, a comparison signal is output to a program control unit 270 through line 22.

Op grond van de output van de vergelijker 250, de uitwistelwaarde van de uitwisteller 280 en de programma-5 instructiewaarde die is opgeslagen in het instructieregister 260 bepaalt de programmabesturingseenheid 270 of het program-ma-adres dient te verspringen of niet en zo ja naar welk adres. Op basis van de bepaling wordt een programmabesturings-signaal uitgevoerd vanuit de programmabesturingseenheid 270 10 naar het instructieregister 260 via een lijn 28. Een program-ma-instructiesignaal wordt uitgevoerd naar de vertolker 240 via een lijn 24 wanneer het instructieregister 260 het pro-grammabesturingssignaal ontvangt. Op hetzelfde moment wijzigt het instructieregister 260 de programmatelwaarde en voert ver-15 volgens de gewijzigde waarde uit als een terugkoppeling naar de programmabesturingseenheid 270 via de lijn 26 teneinde als referentie te dienen voor de verschuiving van de programmabesturingseenheid 270.Based on the output of comparator 250, the erase value of the erase counter 280, and the program-5 instruction value stored in the instruction register 260, the program controller 270 determines whether or not the program address should jump and if so to which one. address. Based on the determination, a program control signal is output from the program control unit 270 to the instruction register 260 via a line 28. A program instruction signal is output to the performer 240 via a line 24 when the instruction register 260 receives the program control signal . At the same time, the instruction register 260 changes the program count value and then outputs the changed value as a feedback to the program controller 270 through the line 26 to serve as a reference for the shift of the program controller 270.

De vertolker 240 voert registeradressignalen uit via 20 de lijn 20 en een vrijgavesignaal via de lijn 30 naar de registers 220 en het rekenkundige/logische circuit 230 terwijl het programma-instructiesignaal wordt ontvangen vanuit het instructieregister 260. Het rekenkundige/logische circuit 230 leest de waarden uit die zijn opgeslagen in overeenstemming 25 met het registeradressignaal bij ontvangst van het vrijgave-signaal. Door de deductieve functie die wordt uitgevoerd in het rekenkundige/logische circuit 230 kan de waarde en de lo-katie van foutwoorden die aanwezig zijn in verzonden woordsig-nalen worden bepaald.The interpreter 240 outputs register address signals through the line 20 and an enable signal through the line 30 to the registers 220 and the arithmetic / logic circuit 230 while the program instruction signal is received from the instruction register 260. The arithmetic / logic circuit 230 reads the values stored in accordance with the register address signal upon receipt of the enable signal. The deductive function performed in the arithmetic / logic circuit 230 allows the value and location of error words present in transmitted word signals to be determined.

30 Voor het uitvoeren van de deductieve functie omvat het rekenkundige/logische circuit 230 de invertor 232, het vermenigvuldigings/optelcircuit 234, het verschuivings/loga-ritmische circuit 236 en de locator 238. De invertor 232 voert een inverteringsberekening uit op de inputwaarde van de ALU.To perform the deductive function, the arithmetic / logic circuit 230 includes the inverter 232, the multiplication / addition circuit 234, the shift / logic rhythmic circuit 236, and the locator 238. The inverter 232 performs an inverting calculation on the input value of the ALU.

35 Het vermenigvuldigings/optelcircuit 234 voert een optelling en vermenigvuldigingsberekening uit op de inputwaarde van de ALU. Het verschuivings/logaritmische circuit 236 voert een logaritmische berekening uit op de ALU-inputwaardes en voert een ver-schuivingsberekening uit op de ALU-inputwaardes gebaseerd op 40 het resultaat van een logaritmische berekening in overeenstem- 1006<74 13 ming met het vrijgavesignaal. De locator 238 voert een berekening van de lokatie uit.The multiplication / addition circuit 234 performs an addition and multiplication calculation on the input value of the ALU. The shift / logarithmic circuit 236 performs a logarithmic calculation on the ALU input values and performs a shift calculation on the ALU input values based on 40 the result of a logarithmic calculation in accordance with the enable signal. The locator 238 performs a location calculation.

In figuur 2 omvat het verschuivings/logaritmische circuit 236 een logaritmische berekeningseenheid 410 en een 5 multiplexer 420. Bij het berekenen van data wordt bijvoorbeeld een ALU-inputwaarde verzonden naar de logaritmische berekeningseenheid 410 via een lijn 402 en worden verschoven syn-droomsignalen en onverschoven syndroomsignalen respectievelijk daarvandaan verzonden naar de multiplexer 420 zoals, bijvoor- 10 beeld b0, b^, b2m_2, ....... bx en b2m.lf b2m_2, ....... b0 door de lijnen 412 en 414. Wanneer de multiplexer 420 deze signalen ontvangt en in werking is gesteld door het vrijgavesignaal (verschuiving) via de lijn 422 voert de multiplexer 420 het berekeningsresultaat uit via de lijn 424.In Figure 2, the shift / logarithmic circuit 236 includes a logarithmic calculator 410 and a multiplexer 420. For example, when calculating data, an ALU input value is sent to the logarithmic calculator 410 through a line 402 and shifted syndrome signals and unshifted syndrome signals. respectively sent from there to the multiplexer 420 such as, for example, b0, b ^, b2m_2, ....... bx and b2m.lf b2m_2, ....... b0 by lines 412 and 414. When the multiplexer 420 receives these signals and is actuated by the enable signal (shift) over the line 422, the multiplexer 420 outputs the calculation result over the line 424.

15 De verschuiving/logaritme uitgevoerd in het verschui- vings/logaritmecircuit 236 wordt hieronder aangegeven: i bij afwezigheid van verschuiving i 20 a1 -» — bij aanwezigheid van verschuiving en wanneer i even is (16) / + (2"-l) , /-1 - -= 2 + —— wanneer verschuiving aanwezig is en i oneven is 25The shift / logarithm performed in the shift / logarithm circuit 236 is indicated below: i in the absence of shift i 20 a1 - »- in the presence of shift and when i is even (16) / + (2" -1), / -1 - - = 2 + —— when shift is present and i is odd 25

De berekeningswijze van de lokatie is: a1 + a_i-> a1 i<i<2m'1 (17) 30 Wanneer woordsignalen worden verzonden onderneemt het apparaat 200 voor het decoderen van foutwoorden en uitwiswoor-den enkele initiële akties. Dat wil zeggen dat eerst de waardes opgeslagen in twee van de registers 220 respectievelijk worden ingesteld op an en a'1 en deze twee registers worden ge-35 definieerd als rx en r2. De waarde van het register rx is derhalve an en de waarde van het register r2 is a1. Wanneer het eerst verzonden woordsignaal wordt verzonden naar het apparaat 2 00 wordt de waarde van het register rx vermenigvuldigt met a'1 1006174 14 en wordt vervolgens de waarde van het register r1 vervangen door r^a'1. Dat wil zeggen dat wanneer het syndroomsignaal het 1-de signaal is in de verzonden data de waarde van het register rx is ingesteld op α^α'1. Steeds wanneer het uitwiswoord-5 signaal niet bestaat uit een logische "0" wordt de waarde van ri opgeslagen in een geschikt register van de registers 220. Vervolgens kan de definitie X^a11 worden uitgevoerd zonder de berekening van machtsverheffingen met grote exponenten, dat wil zeggen exponenten groter dan 2. Deze procedure kan de com-10 plexiteit van het circuit reduceren.The location calculation method is: a1 + a_i-> a1 i <i <2m'1 (17) When word signals are sent, the device 200 for decoding error words and erasures takes some initial actions. That is, first, the values stored in two of the registers 220 are set to an and a'1, respectively, and these two registers are defined as rx and r2. The value of the register rx is therefore an and the value of the register r2 is a1. When the first transmitted word signal is sent to the device 200, the value of the register rx is multiplied by a'1 1006174 14, and then the value of the register r1 is replaced by r ^ a'1. That is, when the syndrome signal is the 1 th signal in the transmitted data, the value of the register rx is set to α ^ α'1. Whenever the erase-5 signal does not consist of a logic "0", the value of ri is stored in a suitable register of registers 220. Subsequently, the definition X ^ a11 can be performed without calculating power expansions with large exponents, i.e. say exponents greater than 2. This procedure can reduce the complexity of the circuit.

In het verleden was een RS decoder in staat om twee fouten te corrigeren met een op een processor gebaseerde pro-grammabesturingsstructuur zoals boven werd aangegeven. Een op een processor gebaseerde programmabesturingsstructuur is even-15 wel niet praktisch aangezien de berekeningsformules zeer complex worden wanneer een RS decoder meer dan twee fouten dient op te lossen, een decoder die twee in RS codes aanwezige fouten kan corrigeren komt daarom tegemoet aan de werkelijke behoeftes. Fouten en uitwissingen kunnen worden gecorrigeerd met 20 behulp van de bestaande vergelijkingen (3) tot (10) wanneer (p/q)=(0,1), (0,1), (0,3), (0,4), (1,1) of (1,2) maar niet voor de situatie dat p=2 en q=0. Fouten kunnen ook worden bepaald met behulp van vergelijking (13) wanneer (p,q)=(0,l). De waarde van (Xit ΥΑ) kan worden bepaald met behulp van de boven-25 genoemde berekeningen bestaande uit optelling, aftrekken en tekenomkering en de berekening van de lokatie 1A van kan eveneens worden bepaald.In the past, an RS decoder has been able to correct two errors with a processor-based program control structure as indicated above. A processor-based program control structure is also impractical since the calculation formulas become very complex when an RS decoder has to solve more than two errors, a decoder that can correct two errors present in RS codes therefore meets actual needs . Errors and erasures can be corrected using the existing equations (3) to (10) when (p / q) = (0.1), (0.1), (0.3), (0.4) , (1,1) or (1,2) but not for the situation where p = 2 and q = 0. Errors can also be determined using equation (13) when (p, q) = (0.1). The value of (Xit ΥΑ) can be determined using the above-mentioned calculations consisting of addition, subtraction and character inversion and the calculation of the location 1A of can also be determined.

De vergelijkingen (14) en (15) kunnen eveneens worden opgelost wanneer p-2 en q=0: 30 SQS-, + S,S2 χ>+χ>--ΊμΊάEquations (14) and (15) can also be solved when p-2 and q = 0:30 SQS-, + S, S2 χ> + χ> - ΊμΊά

SjSj + S<S-i x'-x>-s£Ttt (15) 35 Bij conventionele berekeningsmethodes wordt bijvoor beeld een doorzoeking volgens Chien uitgevoerd waarbij de berekeningsformules zeer complex zijn en tijdrovend. De uitvinding kan de fouten decoderen met de nieuwe berekeningsmethodes van lokatie en verschuiving/logaritme. Vergelijking (14) ge- .1006(74 15 deeld door vergelijking (15) verschaft een vergelijking (17) als volgt: (Xi + Xï) =X± XL (i ) „-di-la) (18)SjSj + S <S-i x'-x> -s £ Ttt (15) 35 In conventional calculation methods, for example, a search according to Chien is carried out in which the calculation formulas are very complex and time-consuming. The invention can decode the errors with the new location and shift / logarithm calculation methods. Equation (14) divided 1006 (74 15 divided by equation (15) provides an equation (17) as follows: (Xi + Xï) = X ± XL (i) „-di-la) (18)

XrX2 X2 xt [ } 5XrX2 X2 xt [} 5

De werkwijze voor het berekenen van de lokatie is: a1 + a"1 —> a1 l<i<2ra'1 (19) 10 De volgende vergelijking wordt verkregen door de lokatiewerk-wij ze:The method for calculating the location is: a1 + a "1 -> a1 l <i <2ra'1 (19) 10 The following equation is obtained by the location method:

XX

a1!-^ =—i- l<(l1-l2)rnod(2m-l)<2m-l (19) 15 Vermenigvuldiging van vergelijking (15) met vergelijking (19) verschaft de volgende vergelijking: X2a1! - ^ = —i l <(l1-l2) rnod (2m-l) <2m-l (19) 15 Multiplication of equation (15) with equation (19) provides the following equation: X2

XrX2-j^=x22 = a212 20 Op dezelfde wijze als bij de verschuivings/logaritmische berekening van vergelijking (16) wordt de waarde van 12 verkregen.XrX2-j ^ = x22 = a212 20 In the same manner as in the shift / logarithmic calculation of equation (16), the value of 12 is obtained.

Met deze werkwijze worden de waardes van Xj2 en X22 verkregen. Om de waarde van Y2 bij vergelijking (5) op te lossen is het noodzakelijk om een berekening uit te voeren in 25 overeenstemming met het volgende: i -» a1 teneinde de waardes Xx en X2 te vinden.With this method, the values of Xj2 and X22 are obtained. To solve the value of Y2 at equation (5), it is necessary to perform a calculation in accordance with the following: i - »a1 in order to find the values Xx and X2.

30 Vergelijking (5) wordt opnieuw gedefinieerd teneinde berekening te voorkomen van a1 uit i en op te lossen voor de waarde Y2: S2 + X] S0 (20) 35Equation (5) is redefined to avoid calculating a1 from i and solving for the value Y2: S2 + X] S0 (20) 35

Het stroomschema van figuur 3 toont, wanneer alle verzonden woorden zijn ingevoerd in de decoders, dat wanneer alle syndroomsignalen gelijk zijn aan nul zoals vastgesteld in 1006174 16 stap 310, dit uiteraard betekent dat de verzonden woorden geen foutwoorden bevatten en in de volgende stap, stap 340, wordt de decoderingswerking beëindigd. Wanneer niet alle syndroom-signalen gelijk zijn aan nul dan wordt in stap 312 de uitwis-5 telwaarde die is opgeslagen in de uitwisteller 280 gecontroleerd. Wanneer de uitwistellerwaarde gelijk is aan 1, 2 of 3 vertakt de stroming zich naar links waar een beslissing wordt genomen met betrekking tot de vraag of een foutwoord aanwezig is of niet, met afzonderlijke gebruikmaking van de Forney syn-10 droomformules in overeenstemming met de stappen 314, 316 of 318 .The flowchart of Figure 3 shows, when all the transmitted words have been entered into the decoders, that when all of the syndrome signals are zero as determined in 1006174 16 step 310, this obviously means that the transmitted words do not contain any error words and in the next step, step 340, the decoding operation is ended. If not all syndrome signals are equal to zero, then in step 312 the erase count value stored in the erase counter 280 is checked. When the erase count value equals 1, 2 or 3, the flow branches to the left where a decision is made as to whether an error word is present or not, using the Forney syn-10 dream formulas separately in accordance with the steps 314, 316 or 318.

In stap 318 worden bijvoorbeeld, wanneer de uitwistellerwaarde gelijk is aan 1, de Forney syndroomformules van vergelijking (7) geëvalueerd. In stap 316 worden, wanneer de 15 uitwistellerwaarde gelijk is aan 2, de Forney syndroomformules van vergelijking (8) geëvalueerd. In stap 314 worden, wanneer de uitwistellerwaarde gelijk is aan 3, de Forney syndroomfor-mule van vergelijking (9) geëvalueerd. Na een van de bovengenoemde stappen worden de waardes van Xif zoals X3 in stap 320 20 en X2 in stap 3 22, verkregen.For example, in step 318, when the erase count value equals 1, the Forney syndrome formulas of equation (7) are evaluated. In step 316, when the erase count value equals 2, the Forney syndrome formulas of equation (8) are evaluated. In step 314, when the erase counter value is equal to 3, the Forney syndrome formula of equation (9) is evaluated. After one of the above steps, the values of Xif such as X3 in step 320 20 and X2 in step 3 22 are obtained.

Wanneer de uitwistellerwaarde gelijk is aan 4 dan wordt in stap 3 24 de waarde van Y4 verkregen overeenkomstig vergelijking (3) en worden de waardes van S2, S3 en S0 vernieuwd in overeenstemming met de waarde van Y4. In stap 328 25 wordt vervolgens de waarde van Y2 verkregen door vergelijking (20) en gebaseerd op deze waarde van Y2 wordt de waarde van S0 bijgewerkt. In stap 330 wordt vervolgens de waarde Yi verkregen met behulp van de vergelijking (6).When the erase counter value is equal to 4, in step 3 24, the value of Y4 is obtained according to equation (3) and the values of S2, S3 and S0 are renewed in accordance with the value of Y4. Then, in step 328, the value of Y2 is obtained by equation (20) and based on this value of Y2, the value of S0 is updated. Then, in step 330, the value Yi is obtained using the equation (6).

De berekeningswerkwijze van de waarde van Yi wordt 30 geïnitieerd door substitutie van de maximale waarde "i". De berekende Yi(max) kan worden genomen als een bekend foutwoord en het foutwoord kan worden beschouwd als verwijderd uit de verzonden woorden. Nieuwe waardes van Si worden verkregen door een werkwijze die wordt toegevoegd door vergelijking (2).The method of calculating the value of Yi is initiated by substitution of the maximum value "i". The calculated Yi (max) can be taken as a known error word and the error word can be considered as removed from the sent words. New values of Si are obtained by a method added by equation (2).

35 Is bijvoorbeeld de waarde van Y4 bekend dan zijn de nieuwe waardes van Si: S0<-S0+Y4For example, if the value of Y4 is known, then the new values of Si: S0 <-S0 + Y4

Si<-S0+Y4X4 40 S2*-S2+Y4X22 »100 6 . 74 17Si <-S0 + Y4X4 40 S2 * -S2 + Y4X22 »100 6. 74 17

Iedere waarde van kan worden verkregen die overeenstemt met iedere XL.Any value of can be obtained corresponding to any XL.

Op dezelfde wijze, wanneer de uitwistelwaarde gelijk is aan 3, zal wanneer in stap 314 het Forney syndroom T1 vol-5 gens vergelijking (9) is berekend en gecontroleerd indien het resultaat niet gelijk is aan nul, hetgeen betekent dat de fou ten niet kunnen worden gedecodeerd, dit de beëindiging betekenen van de decoderingen in stap 342. Is het syndroom Tx gelijk aan nul dan takt de stroming zich af vanuit de beslisstap 314 10 en worden de waardes van Y3, Y2en Y3 apart berekend in stap 326, stap 328 en stap 330, zoals reeds eerder werd beschreven.Likewise, when the knockout value is equal to 3, if in Step 314 the Forney syndrome T1 according to equation (9) is calculated and checked if the result is not equal to zero, which means that the errors cannot are decoded, this means the termination of the decodings in step 342. If the syndrome Tx is equal to zero then the flow branches off from the decision step 314 and the values of Y3, Y2 and Y3 are calculated separately in step 326, step 328 and step 330, as previously described.

Wanneer de uitwistelwaarde gelijk is aan 2 dan worden in beslisstap 316 de waardes van de Forney syndromen T3 en T2 berekend en gecontroleerd volgens vergelijking (8). Wanneer T3 15 of T2 een van beide nul is dan stopt de stroom in stap 342. Wanneer T3 en T2 beide nul zijn dan takt de stroom zich af en worden de waardes Y1 en Y2 apart verkregen in de stappen 328 en 330, zoals reeds eerder werd beschreven.If the swap value is equal to 2, then in decision step 316, the values of the Forney syndromes T3 and T2 are calculated and checked according to equation (8). When T3 or T2 is either zero, the current stops in step 342. When T3 and T2 are both zero, the current branches off and the values Y1 and Y2 are obtained separately in steps 328 and 330, as before was described.

Wanneer de uitwistelwaarde gelijk is aan 1 wordt de 20 beslissingsstap 318 uitgevoerd om de syndroomvergelijkingen (7) te berekenen en te controleren voor Tlf T2 en T3. Wanneer ten minste één van de waardes Tlt T2 en T3 maar niet alle waardes gelijk zijn aan nul kan decodering niet worden uitgevoerd hetgeen de beëindiging inhoudt van de decodering via de stap 25 342. Zijn T3, T2 en T3 alle gelijk aan nul dan wordt in stap 330 op de eerder beschreven wijze de waarde van Y3 bepaald.When the swap value equals 1, the decision step 318 is performed to calculate and check the syndrome equations (7) for Tlf T2 and T3. When at least one of the values T1, T2 and T3, but not all values are zero, decoding cannot be performed, which means the decoding is terminated via the step 342. If T3, T2 and T3 are all equal to zero then in step 330 determines the value of Y3 in the manner previously described.

Wanneer de waardes YA overeenkomstig de boven beschreven reeks van stappen zijn bepaald dan worden de overeenkomstige lokaties bepaald overeenkomstig Yt (de waardes van 30 1L kunnen worden verkregen met de verschuivings/logaritmische bewerking van X*) . In de volgende stap 322 wordt een oordeel gegeven met betrekking tot de vraag of lt zich in het correcte gebied bevindt of niet. Aangezien de som van de ingevoerde syndroomsignalen gelijk is aan n moet de waarde van liggen 35 in het gebied tot 0 tot n-1. Ligt 1Α buiten het correcte gebied dan is decodering niet mogelijk en wordt gestopt bij blok 342.When the values YA are determined according to the series of steps described above, the corresponding locations are determined according to Yt (the values of 30L can be obtained with the shift / logarithmic operation of X *). In the next step 322, a judgment is made as to whether lt is in the correct region or not. Since the sum of the input syndrome signals is equal to n, the value of 35 must range from 0 to n-1. If 1Α is outside the correct range, decoding is not possible and is stopped at block 342.

Wanneer de uitwistellerwaarde gelijk is aan 0 kan de decodering worden voltooid op een wijze soortgelijk aan de stappen die hierboven zijn beschreven. De stoom vertakt zich 1 0 0 6 1 74 18 vanaf het beslissingsblok 312 naar stap 334 waar het aantal foutwoorden wordt berekend in overeenstemming met vergelijking (12). Wanneer sommige, dat wil zeggen een of meer maar niet alle, grootheden die worden berekend in vergelijking (12) ge-5 lijk zijn aan nul, dan is de decodering niet oplosbaar en wordt de decodering beëindigd bij blok 340. Als geen van de grootheden berekend met behulp van vergelijking (12) gelijk is aan nul, dat wil zeggen dat p=2, dan worden de waardes van Xx2 en X22 in overeenstemming met de vergelijkingen (14) tot (19) 10 en vervolgens Y2 berekend en wordt S0 bijgewerkt, respectievelijk in de stappen 336 en 328. Wanneer de grootheden die zijn berekend met behulp van vergelijking (12) alle gelijk zijn aan nul, dat wil zeggen dat p=l, dan wordt de waarde van Xx berekend in stap 338 en de waarde van Yx wordt berekend in stap 15 330. De test in stap 332 wordt vervolgens uitgevoerd ter con trole van het correcte gebied, zoals eerder reeds werd beschreven .When the erase counter value is equal to 0, the decoding can be completed in a manner similar to the steps described above. The steam branches from decision block 312 to step 334 where the number of error words is calculated in accordance with equation (12). When some, ie one or more, but not all, quantities calculated in equation (12) are equal to zero, the decoding is not soluble and the decoding is terminated at block 340. If none of the quantities calculated using equation (12) equals zero, i.e. p = 2, then the values of Xx2 and X22 are calculated according to equations (14) to (19) 10 and then Y2 and S0 is updated , in steps 336 and 328, respectively. If the quantities calculated using equation (12) are all equal to zero, i.e., p = 1, then the value of Xx is calculated in step 338 and the value of Yx is calculated in step 330. The test in step 332 is then performed to check the correct area, as previously described.

Samenvattend verschaft de uitvinding een nieuwe werkwijze voor het decoderen van RS codes waarvan de Hamming af-20 stand gelijk is aan 5 door gebruikmaking van het programma om het delen van informatie te besturen in de op bewerkingen gebaseerde structuur en door het toepassen van de berekening van lokaties ter vermijding van de redundante berekening van een doorzoeking volgens Chien ("Chien's Search"). Het is belang-25 rijk dat het rekenkundige logicacircuit aldus zeer eenvoudig wordt zonder dat de noodzaak aanwezig is voor het berekening van de machten. Slechts de volgende vier soorten berekeningen zijn vereist: 30 inversieberekening : a-> — a vermenigvuldings/optellingsberekeningen : a,b,c -» a-b + c verschuivings/logaritmische berekening : zie vergelijking (16) 35 lokatieberekening : zie vergelijking (17)In summary, the invention provides a new method for decoding RS codes whose Hamming distance is equal to 5 by using the program to control information sharing in the operation-based structure and by applying the calculation of locations to avoid the redundant calculation of a search according to Chien ("Chien's Search"). It is important that the arithmetic logic circuit thus becomes very simple without the necessity of calculating the powers. Only the following four types of calculations are required: 30 inversion calculation: a-> - a multiplication / addition calculations: a, b, c - »a-b + c shift / logarithmic calculation: see equation (16) 35 location calculation: see equation (17)

Voor wat betreft een verkorte RS code, η Φ 2m, kan de hardware van het verschuiving/logaritmecircuit en van de loca- 1006174 19 tor in het rekenkundige/logische circuit 230 zelfs nog verder worden vereenvoudigd. Eerst kan het verschuiving/logaritme circuit de waarde van 11 berekenen met gebruikmaking van Xi en XL2. Dit heeft alleen betekenis wanneer 11 zich bevindt in het 5 gebied van 0 tot n-1 en decodering kan niet worden voltooid wanneer 1L zich buiten dit gebied bevindt. De logaritmetabel (niet getoond) in het verschuiving/logaritmecircuit 236 van figuur 1 komt daarom uitsluitend overeen met het gebied 0 tot 2n_1. Wanneer de ingevoerde waarde is gelegen buiten het geldi-10 ge gebied dan geeft het verschuiving/logaritmecircuit een output in de vorm van een foutvlag.As for a shortened RS code, η Φ 2m, the hardware of the shift / logarithm circuit and of the locator 1006174 19 tor in the arithmetic / logic circuit 230 can be simplified even further. First, the shift / logarithm circuit can calculate the value of 11 using Xi and XL2. This only makes sense when 11 is in the range from 0 to n-1 and decoding cannot be completed when 1L is outside this range. The logarithm table (not shown) in the shift / logarithm circuit 236 of Figure 1 therefore corresponds only to the range 0 to 2n_1. When the input value is outside the monetary range, the shift / logarithm circuit gives an output in the form of an error flag.

Voor wat de locator 238 betreft, moet de outputwaarde van de locator 238 zijn gelegen in het gebied van 1 tot 2m'1 omdat (11-12) zich bevindt in het gebied van 1 tot n-1 (wanneer 15 12 > 12) overeenkomstig vergelijking (17). De lokatieberekening kan daarom worden uitgevoerd in het gebied 1 tot Max (2^, n-1) . Bevindt de waarde zich buiten dit gebied dan wordt de output gevormd door een foutvlag om aan te geven dat de decoder geen foutwoorden correct kan corrigeren, dat wil zeggen dat de 20 code niet oplosbaar is.As for the locator 238, the output value of the locator 238 must be in the range from 1 to 2m'1 because (11-12) is in the range from 1 to n-1 (when 15 12> 12) according to equation (17). The location calculation can therefore be performed in the range 1 to Max (2 ^, n-1). If the value is outside this range, the output is an error flag to indicate that the decoder cannot correct error words correctly, ie the 20 code is not soluble.

Bij de voorkeursuitvoeringsvorm met de decoder die RS codes detecteert waarvan de Hamming afstand gelijk is aan 5 is daarom de berekening van machten niet vereist. Dit maakt een vereenvoudiging mogelijk van het rekenkundige/logische cir-25 cuit. Het circuit behoeft niet herhaaldelijk complexe berekeningen uit te voeren bij aanwezigheid van twee foutwoorden en geen uitwiswoord aanwezig is. De decodeersnelheid neemt daardoor toe. Bovendien verschaft de uitvinding een grote verbetering in sectoren die zich bezig houden met de decodering van 30 RS codes.Therefore, in the preferred embodiment with the decoder detecting RS codes whose Hamming distance equals 5, the calculation of powers is not required. This allows a simplification of the arithmetic / logic circuit-25. The circuit need not repeatedly perform complex calculations in the presence of two error words and no erase word is present. The decoding speed increases as a result. In addition, the invention provides a great improvement in sectors involved in the decoding of 30 RS codes.

Alhoewel de uitvinding is beschreven als een voorbeeld en in termen van een voorkeursuitvoeringsvorm dient te worden begrepen dat de uitvinding niet tot de geopenbaarde uitvoeringsvorm is beperkt. Integendeel is het de bedoeling om 35 de verschillende modificaties en soortgelijke opstellingen te omvatten. Aan de omvang van de bijgevoegde conclusies dient derhalve de meest ruime interpretatie te worden verleend teneinde al dergelijke modificatie en soortgelijke opstellingen te omvatten.Although the invention has been described as an example and in terms of a preferred embodiment, it is to be understood that the invention is not limited to the disclosed embodiment. On the contrary, the intention is to include the various modifications and similar arrangements. The scope of the appended claims should therefore be given the widest interpretation in order to include all such modification and similar arrangements.

10061741006174

Claims (10)

1. Foutdecoderingswerkwijze voor het decoderen van syndroomsignalen met gebruikmaking van Reed-Solomon codes, welke Reed-Solomon codes zijn gedefinieerd als RSm(n,k), waarin een m een aantal bits voorstelt van ieder syndroomsignaal, n 5 de lengte is van de Reed-Solomon codes, k de lengte is van in- formatiewoorden in de Reed-Solomon codes en de Reed-Solomon codes p foutwoorden bevatten en q uitwiswoorden en waarbij n<(2m-l) en 2p+q<d-l en d een Hamming afstand is van de Reed-Solomon codes, welke foutdecoderingswerkwijze de volgende 10 stappen omvat: (a) het decoderen van de syndromen, het verkrijgen daaruit van de foutwoorden ("error words") en de uitwiswoorden die aanwezig zijn in ieder van de syndroomsignalen en het bepalen van het aantal van p en q van ieder van de syndromen, 15 (b) het verkrijgen van eerste en tweede foutlokaties uit de vergelijkingen Xt2 = ot21* en X22 = a21* door berekening van een lokatie wanneer twee foutwoorden aanwezig zijn en geen uitwiswoorden in ieder van de syndromen, waarbij de syndromen met twee fouten worden gedefinieerd als: 2 sk = o<k<3 > 0 waarbij = a1*, X2 = a^, 11 en 12 de lokaties definiëren van de twee foutwoorden en Y1 en Y2 waardes zijn van de 25 foutwoorden; (c) het verkrijgen van 11 en 12 overeenkomstig aan ot21* en a212 door het uitvoeren van logaritmische en schuifbewerkin-gen en (d) het verkrijgen van Yx en Y2 door het uitvoeren van 30 een reeks van berekeningsbewerkingen op de produktsom volgens X!2 = a21i, X22 = a21z.1. Error decoding method for decoding syndromes signals using Reed-Solomon codes, which Reed-Solomon codes are defined as RSm (n, k), where m represents a number of bits of each syndrome signal, n is the length of the Reed -Solomon codes, k is the length of information words in the Reed-Solomon codes and the Reed-Solomon codes contain p error words and q erase words and where n <(2m-l) and 2p + q <dl and d have a Hamming distance is of the Reed-Solomon codes, which error decoding method comprises the following 10 steps: (a) decoding the syndromes, obtaining therefrom the error words ("error words") and the erasure words contained in each of the syndrome signals and the determining the number of p and q of each of the syndromes, 15 (b) obtaining first and second error locations from the equations Xt2 = ot21 * and X22 = a21 * by calculating a location when two error words are present and no erase words in everyone er of the syndromes, where the syndromes with two errors are defined as: 2 sk = o <k <3> 0 where = a1 *, X2 = a ^, 11 and 12 define the locations of the two error words and Y1 and Y2 values are of the 25 error words; (c) obtaining 11 and 12 corresponding to ot21 * and a212 by performing logarithmic and sliding operations and (d) obtaining Yx and Y2 by performing a series of calculation operations on the product sum according to X! 2 = a21i, X22 = a21z. 2. Foutdecoderingswerkwijze volgens conclusie 1, verder omvattende: 35 het bepalen van de waardes SA, SB en Sc door evaluatie van de volgende drie gelijkheden wanneer geen uitwiswoorden aanwezig zijn in de syndromen: 1 co 6174 Sa = + S0S2 SB = S2s2 + Sj^Sj Sc = S3S3 + ; 5 en vervolgens: het bepalen van p gelijk aan 1 wanneer SA> SB/ Sc allen gelijk zijn aan 0, het bepalen van p gelijk aan 2 wanneer noch SA, noch 10 SB> noch Sc gelijk zijn aan 0 en het vaststellen dat p niet bepaalbaar is wanneer slechts een of twee van SA, SB, Sc gelijk is (zijn) aan 0.The error decoding method according to claim 1, further comprising: determining the values SA, SB and Sc by evaluating the following three equities when no erase words are present in the syndromes: 1 co 6174 Sa = + S0S2 SB = S2s2 + Sj ^ Sj Sc = S3S3 +; 5 and then: determining p equal to 1 when SA> SB / Sc are all equal to 0, determining p equal to 2 when neither SA, nor 10 SB> nor Sc are equal to 0 and determining that p does not is determinable when only one or two of SA, SB, Sc is (are) equal to 0. 3. Foutdecoderingswerkwijze volgens conclusie 1, met 15 het kenmerk, dat stap (b) de berekening omvat van de lokatie in overeenstemming met het volgende: cd = cc'1 i 1 < i < 210-1Error decoding method according to claim 1, characterized in that step (b) comprises calculating the location in accordance with the following: cd = cc'1 i 1 <i <210-1 4. Foutdecoderingswerkwijze volgens conclusie 3, waarbij p = 2 en q = 0 en waarbij stap (b) de evaluatie omvat van: S0S3+S,S2 X.+X2 = °0 ' S\S{ + S0S2 25 y Y _ ^2^2 + l' 2~S{Sl+S0S2The error decoding method according to claim 3, wherein p = 2 and q = 0 and wherein step (b) comprises the evaluation of: S0S3 + S, S2 X. + X2 = ° 0 'S \ S {+ S0S2 25 y Y _ ^ 2 ^ 2 + l '2 ~ S {Sl + S0S2 5. Foutdecoderingswerkwijze volgens conclusie 4, met het kenmerk, dat stap (c) omvat het verkrijgen van 12 en 12 om 30 de lokaties te bepalen van de foutwoorden door evaluatie van het volgende: X32 = a21i 35 X22 = a212Error decoding method according to claim 4, characterized in that step (c) comprises obtaining 12 and 12 to determine the locations of the error words by evaluating the following: X32 = a21i X22 = a212 6. Foutdecoderingswerkwijze volgens conclusie 5, waarbij stap (c) verder de volgende evaluatie omvat: 10 0 6 i 7 4 i bij afwezigheid van verschuiving i cc — bij aanwezigheid van verschuiving en 5 wanneer i even is i' + (2m -1) . i-l . ... -=2 +- wanneer verschuiving aanwezig is en ι 2 2 oneven isThe error decoding method of claim 5, wherein step (c) further comprises the following evaluation: 10 0 6 i 7 4 i in the absence of shift i cc - in the presence of shift and 5 when i is even i '+ (2m -1) . i-l. ... - = 2 + - when shift is present and ι 2 2 is odd 7. Foutdecoderingswerkwijze volgens conclusie 6, met het kenmerk, dat stap (d) de verkrijging omvat van de waardes van de foutwoorden en Y2 door evaluatie van het volgende: v S2+Xj-S0 2 x\ + x\ 15 s0 s0 + Yx Yi = s0Error decoding method according to claim 6, characterized in that step (d) comprises obtaining the values of the error words and Y2 by evaluating the following: v S2 + Xj-S0 2 x \ + x \ 15 s0 s0 + Yx Yi = s0 8. Apparaat voor het decoderen van foutwoorden en uitwiswoorden aanwezig in verzonden woordsignalen met gebruikmaking van Reed-Solomon codes vanuit een extern systeem, omvattende : (a) een syndroomgenerator voor het ontvangen van de 25 verzonden woordsignalen vanuit het externe systeem en het genereren van syndroomsignalen, (b) een uitwisteller voor het ontvangen van de uitwiswoorden vanuit het externe systeem en het met één incremen-teren van een uitwistelwaarde die iedere keer dat een uitwis- 30 woord wordt ontvangen wordt opgeslagen in de uitwisteller, (c) registermiddelen gekoppeld aan de syndroomgenerator voor het ontvangen van syndroomsignalen vanuit de syndroomgenerator en voorzien van een input voor het ontvangen van de uitwisbits vanuit het externe systeem voor het opslaan 35 van de syndroomsignalen en de uitwisbits op tevoren bepaalde lokaties, (d) rekenkundige/logische middelen, gekoppeld met de registermiddelen voor het uitlezen van de waardes die zijn op- 1006174 de bewerking voor het genereren van een eerste terugkoppelsig-naal en een deductief signaal en het verschaffen van het eerste terugkoppelsignaal naar de registermiddelen, (e) een vergelijker die is gekoppeld met de rekenkun-5 dige/logische middelen voor het ontvangen van het deductieve signaal en het uitvoeren van een vergelijkingsbewerking voor het genereren van een vergelijkingssignaal, (f) een programmabesturingseenheid gekoppeld aan de vergelijker en de uitwisteller voor het ontvangen van het ver- 10 gelijkingssignaal vanuit de vergelijker en het uitlezen van de uitwistellerwaarde die is opgeslagen in de uitwisteller en voor het afgeven van een programmabesturingssignaal, (g) een instructieregister gekoppeld aan de programmabesturingseenheid welke reageert op het programmabesturings- 15 signaal voor het genereren van een programma-instructiesignaal en een tweede terugkoppelsignaal en het afgeven van het tweede terugkoppelsignaal aan de programmabesturingseenheid waardoor de programmabesturingseenheid reageert op het tweede terugkoppelsignaal voor het selectief veranderen van het programmabe-20 sturingssignaal en (h) een vertolker die is gekoppeld met het instructieregister en reageert op het programma-instructiesignaal voor het genereren van een registeradressignaal en een vrijgeef signaal, waarbij de vertolker is gekoppeld met de regis- 25 termiddelen voor het daaraan toevoeren van het registeradressignaal en is gekoppeld met de rekenkundige/logische middelen voor het daaraan toevoeren van het vrijgeefsignaal, waarbij de rekenkundige/logische middelen reageren op het vrijgeefsignaal voor het uitlezen van de syndroomsignalen en de uitwiswoorden 30 die zijn opgeslagen in de registermiddelen in overeenstemming met het registeradressignaal teneinde de foutwoorden in de verzonden woordsignalen te decoderen.An apparatus for decoding error words and obliterations contained in transmitted word signals using Reed-Solomon codes from an external system, comprising: (a) a syndrome generator for receiving the 25 transmitted word signals from the external system and generating syndromic signals , (b) an erase counter for receiving the erase words from the external system and incrementing an erase value that is stored each time an erase word is received in the erase counter, (c) register means associated with the syndrome generator for receiving syndrome signals from the syndrome generator and providing an input for receiving the erase bits from the external system for storing the syndrome signals and the erase bits at predetermined locations, (d) arithmetic / logic means coupled to the register means for reading out the values recorded on 1006174 the operation of generating a first feedback signal and a deductive signal and providing the first feedback signal to the register means, (e) a comparator coupled to the arithmetic / logic means for receiving the deductive signal and performing a comparison operation to generate a comparison signal, (f) a program controller coupled to the comparator and the erase counter for receiving the comparison signal from the comparator and reading the erase counter value stored in the erase counter and for outputting a program control signal, (g) an instruction register coupled to the program control unit responsive to the program control signal for generating a program command signal and a second feedback signal and outputting the second feedback signal to the program control unit, thereby program controller responds to the second feedback signal to selectively change the program control signal and (h) an interpreter coupled to the instruction register and responds to the program instruction signal to generate a register address signal and a release signal, the interpreter being coupled to the register means for supplying the register address signal thereto and coupled with the arithmetic / logic means for supplying the release signal thereto, the arithmetic / logic means responding to the release signal for reading the syndrome signals and the erase words 30 stored in the register means in accordance with the register address signal to decode the error words in the transmitted word signals. (9) Apparaat volgens conclusie 8, met het kenmerk, 35 dat de rekenkundige/logische middelen omvatten: een invertor voor het uitvoeren van een inverterings-berekening op de syndroomsignalen, vermenigvuldig/optelmiddelen voor het uitvoeren van een optellingsberekening en een vermenigvuldigingsberekening 40 op de syndroomsignalen, 1006174 schuif/logaritmemiddelen voor het uitvoeren van een logaritmische berekening op het syndroomsignaal en voor het uitvoeren van een verschuivingsberekening op een resultaat van de logaritmische berekening in overeenstemming met het vrijga-5 vesignaal en locatormiddelen voor het uitvoeren van een lokatiebe- rekening.(9) Apparatus according to claim 8, characterized in that the arithmetic / logic means comprise: an inverter for performing an inverting calculation on the syndrome signals, multiplying / adding means for performing an addition calculation and a multiplication calculation 40 on the syndromic signals, 1006174 shift / logarithmic means for performing a logarithmic calculation on the syndrome signal and performing a shift calculation on a result of the logarithmic calculation in accordance with the enable signal and location means for performing a location calculation. 10. Apparaat volgens conclusie 8, met het kenmerk, 10 dat de tevoren bepaalde bewerking selectief wordt uitgevoerd door het bedienen van de invertor, de vermenigvul-dig/optelmiddelen, de verschuivings/logaritmemiddelen en de locatormiddelen in de rekenkundige/logische middelen teneinde het eerste terugkoppelalgoritmesignaal te genereren alsmede 15 het deductieve signaal. 1006174An apparatus according to claim 8, characterized in that the predetermined operation is selectively performed by operating the inverter, the multiplication / addition means, the shift / logarithm means and the locator means in the arithmetic / logic means in order to determine the first feedback algorithm signal as well as the deductive signal. 1006174
NL1006174A 1997-04-17 1997-05-30 Error decoding method as well as device for decoding. NL1006174C2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
GB9707768A GB2324390B (en) 1997-04-17 1997-04-17 Error decoding method and apparatus for Reed-Solomon codes
GB9716661A GB2324391B (en) 1997-04-17 1997-04-17 Error decoding method and apparatus for reed-soloman codes
NL1006174A NL1006174C2 (en) 1997-04-17 1997-05-30 Error decoding method as well as device for decoding.

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
GB9707768A GB2324390B (en) 1997-04-17 1997-04-17 Error decoding method and apparatus for Reed-Solomon codes
GB9716661 1997-04-17
GB9707768 1997-04-17
GB9716661A GB2324391B (en) 1997-04-17 1997-04-17 Error decoding method and apparatus for reed-soloman codes
NL1006174A NL1006174C2 (en) 1997-04-17 1997-05-30 Error decoding method as well as device for decoding.
NL1006174 1997-05-30

Publications (1)

Publication Number Publication Date
NL1006174C2 true NL1006174C2 (en) 1998-12-01

Family

ID=27268813

Family Applications (1)

Application Number Title Priority Date Filing Date
NL1006174A NL1006174C2 (en) 1997-04-17 1997-05-30 Error decoding method as well as device for decoding.

Country Status (1)

Country Link
NL (1) NL1006174C2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0139443A2 (en) * 1983-10-05 1985-05-02 Yamaha Corporation Data error detection and correction circuit
EP0204612A1 (en) * 1985-05-30 1986-12-10 LABORATOIRE CENTRAL DE TELECOMMUNICATIONS Société anonyme: Method for transmitting data with a possibility for packet error correction, and coding and decoding apparatus for carrying out said method
EP0387924A2 (en) * 1983-12-20 1990-09-19 Sony Corporation Method and apparatus for decoding error correction code
EP0592229A2 (en) * 1992-10-07 1994-04-13 Samsung Electronics Co., Ltd. Multiple error correcting method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0139443A2 (en) * 1983-10-05 1985-05-02 Yamaha Corporation Data error detection and correction circuit
EP0387924A2 (en) * 1983-12-20 1990-09-19 Sony Corporation Method and apparatus for decoding error correction code
EP0204612A1 (en) * 1985-05-30 1986-12-10 LABORATOIRE CENTRAL DE TELECOMMUNICATIONS Société anonyme: Method for transmitting data with a possibility for packet error correction, and coding and decoding apparatus for carrying out said method
EP0592229A2 (en) * 1992-10-07 1994-04-13 Samsung Electronics Co., Ltd. Multiple error correcting method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
G.D. FORNEY: "On decoding BCH codes", IEEE TRANSACTIONS ON INFORMATION THEORY, vol. 11, no. 4, November 1965 (1965-11-01), NEW-YORK US, pages 549 - 557, XP000575335 *
STAMMNITZ: "Error protection of 34 Mbit/s DPCM encoded TV signals with multiple error correcting BCH codes", 1980 INTERNATIONAL ZURICH SEMINAR ON DIGITAL COMMUNICATION, 4 March 1980 (1980-03-04) - 6 March 1980 (1980-03-06), ZURICH - CH, pages g4.1 - g4.5, XP002057820 *

Similar Documents

Publication Publication Date Title
US5185711A (en) Apparatus for dividing elements of a finite galois field and decoding error correction codes
US5610929A (en) Multibyte error correcting system
JP2821324B2 (en) Error correction circuit
US5440570A (en) Real-time binary BCH decoder
US5020060A (en) Error code correction device having a galois arithmetic unit
EP0158510B1 (en) Error detection and correction in digital communication systems
US4312069A (en) Serial encoding-decoding for cyclic block codes
US5778009A (en) Dedicated ALU architecture for 10-bit Reed-Solomon error correction module
US5694330A (en) Error correction method including erasure correction, and apparatus therefor
NL8400629A (en) QUICK DECODE FOR REED-SOLOMON CODES, WHICH CAN ALSO BE USED AS ENCODEUR AND RECORDING / REPRODUCTION DEVICE WITH SUCH AN ENCODE / DECODEUR.
KR100260415B1 (en) High speed serial error position polynomual calculation circuit
US5944848A (en) Error decoding method and apparatus for Reed-Solomon codes
JP3345385B2 (en) Chain search device
NL1006174C2 (en) Error decoding method as well as device for decoding.
US4224680A (en) Parity prediction circuit for adder/counter
EP0723342B1 (en) Error correction apparatus
JPS617729A (en) Device for correcting error burst in compressed circulating block code
KR19990026630A (en) Reed-Solomon decoder and its decoding method
US8700688B2 (en) Polynomial data processing operation
US5408476A (en) One bit error correction method having actual data reproduction function
US20180276547A1 (en) Residue Prediction of Packed Data
US10977003B2 (en) Linear feedback shift register with near-maximal length sequences
GB2324391A (en) Error decoding for Reed-Solomon codes
US8805904B2 (en) Method and apparatus for calculating the number of leading zero bits of a binary operation
JPS6037667B2 (en) phase jump detector

Legal Events

Date Code Title Description
PD2B A search report has been drawn up
V1 Lapsed because of non-payment of the annual fee

Effective date: 20141201