Claims Analysis
Total Claims: 36
Claim 1
Independent Claim
150 words
A Reed-Solomon coder comprising: means for receiving information consisting of a number of data bytes, each byte having a predetermined number of data bits therein, unequal to the number of bits in a code symbol; means for appending to the data bytes a number of pre-pad bits selected to make the total number of data bits in the data bytes plus the number of pre-pad bits divisible by the number of bits in a symbol for the finite field of the specific Reed-Solomon code employed: means for determining and appending a redundancy polynomial to the information polynomial and the pre-pad bits; and, means for appending to the redundancy polynomial a number of post-pad bits so that the total number of bits in the data bytes plus the pre-pad bits plus the redundancy polynomial plus the post pad bits divided by the number of bits in a byte is an integer.
Claim 2
Dependent Claim
150 words
A Reed-Solomon coder comprising: means for receiving information consisting of a number of data bytes, each byte having a predetermined number of data bits therein, unequal to the number of bits in a code symbol; means for appending to the data bytes a number of pre-pad bits selected to make the total number of data bits in the data bytes plus the number of pre-pad bits divisible by the number of bits in a symbol for the finite field of the specific Reed-Solomon code employed: means for determining and appending a redundancy polynomial to the information polynomial and the pre-pad bits; and, means for appending to the redundancy polynomial a number of post-pad bits so that the total number of bits in the data bytes plus the pre-pad bits plus the redundancy polynomial plus the post pad bits divided by the number of bits in a byte is an integer.
Claim 3
Dependent Claim
84 words
The Reed-Solomon coder of claim 1 wherein the number of information bits in the information polynomial plus the number of pre-pad bits is divisible by ten, and wherein the means for determining and appending a redundancy polynomial to the information polynomial and the pre-pad bits is a means using the GF(1024) generator polynomial: ##EQU22## where γ i =(ω i ) 32 , and wherein ω i are elements of a finite field generated by a GF(2) polynomial x.sup.10 +x.sup.9 +x.sup.5 +x.sup.4 +x.sup.2 +x.sup.1 +1.
Claim 4
Dependent Claim
45 words
The Reed-Solomon coder of claim 1 further comprised of means for providing a multiple-way interleave wherein even numbered symbols of an information polynomial are placed in a first codeword polynomial and odd numbered symbols of an information polynomial are placed in a second codeword polynomial.
Claim 5
Dependent Claim
55 words
The Reed-Solomon coder of claim 1 wherein the number of data bytes in the information received varies from time to time, and further comprised of means responsive to the number of data bytes received for determining the number of pre-pad bits and post-pad bits to append thereto based upon the number of data bytes received.
Claim 6
Dependent Claim
21 words
The Reed-Solomon coder of claim 4 wherein the sum of the pre-pad bits and the post-pad bits is always one byte.
Claim 7
Dependent Claim
48 words
The Reed-Solomon coder of claim 1 wherein the means for determining and appending a redundancy polynomial to the data bytes and the pre-pad bits is an encoder having a k-bit serial external XOR form of linear feedback shift register, where k is equal to or greater than 1.
Claim 8
Dependent Claim
28 words
The Reed-Solomon coder of claim 6 wherein the linear feedback shift register is also configurable to perform the encoding and syndrome generation functions for a computer generated code.
Claim 9
Dependent Claim
29 words
The Reed-Solomon coder of claim 7 wherein the computer generated code is defined by the polynomial: x.sup.56 +x.sup.52 +x.sup.50 +x.sup.43 +x.sup.41 +x.sup.34 +x.sup.30 +x.sup.26 +x.sup.24 +x.sup.8 +1 over GF(2).
Claim 10
Dependent Claim
29 words
The Reed-Solomon coder of claim 6 wherein the linear feedback shift register is also configurable to perform the encoding and error detection functions for a CRC error detecting code.
Claim 11
Dependent Claim
23 words
The Reed-Solomon coder of claim 9 wherein the CRC error detection code is defined by the polynomial: X.sup.16 +X.sup.12 +X.sup.5 +1 over GF(2).
Claim 12
Dependent Claim
71 words
In a Reed-Solomon decoder, the improvement comprising: a residue generator responsive to a received codeword polynomial for forming a residue responsive to introduced errors; and a burst trapping decoder coupled to the residue generator for correcting a single burst error contained within one, two or three adjacent symbols, said burst trapping decoder being a k bit serial external XOR form of linear feedback shift register wherein k is greater than 1.
Claim 13
Dependent Claim
71 words
In a Reed-Solomon decoder, the improvement comprising: a residue generator responsive to a received codeword polynomial for forming a residue responsive to introduced errors; and a burst trapping decoder coupled to the residue generator for correcting a single burst error contained within one, two or three adjacent symbols, said burst trapping decoder being a k bit serial external XOR form of linear feedback shift register wherein k is greater than 1.
Claim 14
Dependent Claim
86 words
The Reed-Solomon decoder of claim 11 wherein the residue generator is operative on a codeword having a number of information bits in the information polynomial plus a number of pre-pad bits which is divisible by ten, and wherein the redundancy polynomial appended to the information polynomial and the pre-pad bits satisfies the GF(1024) generator polynomial: ##EQU23## where γ i =(ω i ) 32 , and wherein ω i are elements of a finite field generated by a GF(2) polynomial x.sup.10 +x.sup.9 +x.sup.5 +x.sup.4 +x.sup.2 +x.sup.1 +1.
Claim 15
Dependent Claim
136 words
In a Reed-Solomon decoder, the improvement comprising: a residue generator responsive to a received codeword polynomial for forming a residue responsive to introduced errors; a burst trapping decoder coupled to the residue generator for correcting in real time a single burst error contained within one, two or three adjacent symbols, said burst trapping decoder being a k bit serial external XOR form of linear feedback shift register wherein k is greater than 1; and means operating in non real time for determining error locations and values by: (a) converting the residue of the k bit serial external XOR form of linear feedback shift register to a time domain error syndrome; (b) converting the time domain syndrome of step (a) to frequency domain error syndromes; and (c) determining error locations and values from the frequency domain syndromes.
Claim 16
Dependent Claim
136 words
In a Reed-Solomon decoder, the improvement comprising: a residue generator responsive to a received codeword polynomial for forming a residue responsive to introduced errors; a burst trapping decoder coupled to the residue generator for correcting in real time a single burst error contained within one, two or three adjacent symbols, said burst trapping decoder being a k bit serial external XOR form of linear feedback shift register wherein k is greater than 1; and means operating in non real time for determining error locations and values by: (a) converting the residue of the k bit serial external XOR form of linear feedback shift register to a time domain error syndrome; (b) converting the time domain syndrome of step (a) to frequency domain error syndromes; and (c) determining error locations and values from the frequency domain syndromes.
Claim 17
Dependent Claim
54 words
The improvement of claim 13 wherein the real time correcting a single burst errors is limited to a first predetermined number of bits, and the non real time determining of error locations and values for single burst errors and double burst errors is limited to a second and third predetermined number of bits, respectively.
Claim 18
Dependent Claim
25 words
The improvement of claim 13 wherein the means operating in non real time employs the same symbol representation as used for the real time correction.
Claim 19
Dependent Claim
86 words
The Reed-Solomon decoder of claim 13 wherein the residue generator is operative on a codeword having a number of information bits in the information polynomial plus a number of pre-pad bits which is divisible by ten, and wherein the redundancy polynomial appended to the information polynomial and the pre-pad bits satisfies the GF(1024) generator polynomial: ##EQU24## where γ 1 =(ω i ) 32 , and wherein ω i are elements of a finite field generated by a GF(2) polynomial x.sup.10 +x.sup.9 +x.sup.5 +x.sup.4 +x.sup.2 +x.sup.1 +1.
Claim 20
Dependent Claim
55 words
The improvement of claim 13 wherein the burst trapping decoder utilizes one form of finite field representation and the means operating in non real time for determining error locations and values utilizes a second form of finite field representation, and further comprised of means for linear mapping between the two forms of finite field representations.
Claim 21
Dependent Claim
41 words
The improvement of claim 17 wherein a subfield representation is used to represent the finite field employed for non real time correction, and subfield computation is employed within the means operating in non real time for determining error locations and values.
Claim 22
Dependent Claim
645 words
A decoder for an error detection and correction system using a Reed-Solomon code or related code of degree d-1 for detection and correction of a plurality of errors in codewords of n symbols comprised of k data symbols and d-1 check symbols, wherein each symbol is comprised of m binary bits of information, said decoder comprising: data buffer means for storing said k data symbols; residue generator means of multiplying a received codeword C'(x) by x d-1 and dividing by a generator polynomial G(x) of said code and producing a residue polynomial T(x) having residue coefficients T j ; processor means comprising means for accessing said residue coefficients T j ; means for computing a syndrome polynomial S(x) from said residue coefficients T j ; means for generating an error locator polynomial σ(x) from said syndrome polynomial S(x); means responsive to said error locator polynomial σ(x) for locating errors; means responsive to said error locator polynomial σ(x) and said syndrome polynomial S(x) for evaluating errors; and means for applying said error information to said data symbols in said data buffer to correct symbols that are in error; said means for evaluating said errors comprising; means for dividing said error locator polynomial σ(x) by (x+α L ) to produce a new error locator polynomial σ(x) and calculating an error value E from said syndrome polynomial S(x) and said new error locator polynomial σ(x), comprising a single software loop comprising: (1) means for initializing a counter g=1, a remainder R=1, a denominator D=1, and a numerator N=S j ; (2) means for calculating a finite field sum of said remainder R and a finite field product of a finite field antilogarithm of said location L and said remainder R; (3) means for storing said finite field sum as said remainder R and as a coefficient σ g of said error locator polynomial σ(x); (4) means for calculating a finite field sum of said remainder R and a finite field product of a finite field antilogarithm of said location L and said denominator D; (5) means for storing said finite field sum as said denominator D; (6) means for calculating a finite field sum of said numerator N and a finite field product of said remainder R and a coefficient S j-g of said syndrome polynomial S(x); (7) means for storing said finite field sum as said numerator N; (8) means for incrementing said counter g; and (9) means for repeating said means (2) through (8) for values of said counter g up to and including j; means for recording an indicium when R, D, or N is equal to zero after the operation of said means (1) through (9); means responsive to said indicium for terminating error correction unsuccessfully; means for calculating a finite field quotient of said numerator N and said denominator D; means for recording a finite field logarithm of said finite field quotient as a parameter E'; means for calculating a finite field product of said finite field quotient and a finite field antilogarithm of -L*m 0 ; means for recording said finite field product as said error value E; and means for adjusting coefficients of said syndrome polynomial S(x) comprising a software loop comprising: (a) means for initializing a counter g=0; (b) means for calculating a finite field antilogarithm of said parameter E'; (c) means for calculating a finite field sum of said finite field antilogarithm and a coefficient Sj of said syndrome polynomial S(x); (d) means for storing said finite field sum as said coefficient Sj; (e) means for calculating a finite field sum of said parameter E' and said location L; (f) means for storing said finite field sum as said parameter E'; (g) means for incrementing said counter g; and (h) means for repeating said means (b) through (g) for values of said counter g up to and including j.
Claim 23
Dependent Claim
645 words
A decoder for an error detection and correction system using a Reed-Solomon code or related code of degree d-1 for detection and correction of a plurality of errors in codewords of n symbols comprised of k data symbols and d-1 check symbols, wherein each symbol is comprised of m binary bits of information, said decoder comprising: data buffer means for storing said k data symbols; residue generator means of multiplying a received codeword C'(x) by x d-1 and dividing by a generator polynomial G(x) of said code and producing a residue polynomial T(x) having residue coefficients T j ; processor means comprising means for accessing said residue coefficients T j ; means for computing a syndrome polynomial S(x) from said residue coefficients T j ; means for generating an error locator polynomial σ(x) from said syndrome polynomial S(x); means responsive to said error locator polynomial σ(x) for locating errors; means responsive to said error locator polynomial σ(x) and said syndrome polynomial S(x) for evaluating errors; and means for applying said error information to said data symbols in said data buffer to correct symbols that are in error; said means for evaluating said errors comprising; means for dividing said error locator polynomial σ(x) by (x+α L ) to produce a new error locator polynomial σ(x) and calculating an error value E from said syndrome polynomial S(x) and said new error locator polynomial σ(x), comprising a single software loop comprising: (1) means for initializing a counter g=1, a remainder R=1, a denominator D=1, and a numerator N=S j ; (2) means for calculating a finite field sum of said remainder R and a finite field product of a finite field antilogarithm of said location L and said remainder R; (3) means for storing said finite field sum as said remainder R and as a coefficient σ g of said error locator polynomial σ(x); (4) means for calculating a finite field sum of said remainder R and a finite field product of a finite field antilogarithm of said location L and said denominator D; (5) means for storing said finite field sum as said denominator D; (6) means for calculating a finite field sum of said numerator N and a finite field product of said remainder R and a coefficient S j-g of said syndrome polynomial S(x); (7) means for storing said finite field sum as said numerator N; (8) means for incrementing said counter g; and (9) means for repeating said means (2) through (8) for values of said counter g up to and including j; means for recording an indicium when R, D, or N is equal to zero after the operation of said means (1) through (9); means responsive to said indicium for terminating error correction unsuccessfully; means for calculating a finite field quotient of said numerator N and said denominator D; means for recording a finite field logarithm of said finite field quotient as a parameter E'; means for calculating a finite field product of said finite field quotient and a finite field antilogarithm of -L*m 0 ; means for recording said finite field product as said error value E; and means for adjusting coefficients of said syndrome polynomial S(x) comprising a software loop comprising: (a) means for initializing a counter g=0; (b) means for calculating a finite field antilogarithm of said parameter E'; (c) means for calculating a finite field sum of said finite field antilogarithm and a coefficient Sj of said syndrome polynomial S(x); (d) means for storing said finite field sum as said coefficient Sj; (e) means for calculating a finite field sum of said parameter E' and said location L; (f) means for storing said finite field sum as said parameter E'; (g) means for incrementing said counter g; and (h) means for repeating said means (b) through (g) for values of said counter g up to and including j.
Claim 24
Dependent Claim
47 words
The decoder of claim 19 wherein said residue polynomial coefficients T i are mapped to an internal finite field with subfield properties before being used in computations and said error value E is mapped to an external finite field before being applied to the symbol in error.
Claim 25
Dependent Claim
186 words
A Reed-Solomon encoder comprising means for receiving a plurality of information bits and logically organizing the same into a plurality of ten bit information symbols; means for determining a Reed-Solomon redundancy polynomial for the plurality of 10 bit information symbols using the GF(1024) generator polynomial ##EQU25## where γ i =(ω i ) 32 , and wherein ω i are elements of a finite field generated by a GF(2) polynomial means for appending the Reed Solomon redundancy polynomial onto the plurality of information bits said plurality of information bits being logically organized into a plurality of eight bit information bytes, the number of information bytes times eight not being divisible by ten, and further comprising means for appending to the information bits a number of bits to make the sum of the number of information bits and bits appended thereto divisible by ten, whereby the means for determining a Reed-Solomon redundancy polynomial is a means for determining the redundancy polynomial for the combined information bits and the bits appended thereto to make the sum of the number of information bits and bits appended thereto divisible by ten.
Claim 26
Dependent Claim
186 words
A Reed-Solomon encoder comprising means for receiving a plurality of information bits and logically organizing the same into a plurality of ten bit information symbols; means for determining a Reed-Solomon redundancy polynomial for the plurality of 10 bit information symbols using the GF(1024) generator polynomial ##EQU25## where γ i =(ω i ) 32 , and wherein ω i are elements of a finite field generated by a GF(2) polynomial means for appending the Reed Solomon redundancy polynomial onto the plurality of information bits said plurality of information bits being logically organized into a plurality of eight bit information bytes, the number of information bytes times eight not being divisible by ten, and further comprising means for appending to the information bits a number of bits to make the sum of the number of information bits and bits appended thereto divisible by ten, whereby the means for determining a Reed-Solomon redundancy polynomial is a means for determining the redundancy polynomial for the combined information bits and the bits appended thereto to make the sum of the number of information bits and bits appended thereto divisible by ten.
Claim 27
Dependent Claim
21 words
The Reed-Solomon coder of claim 21 wherein the sum of the pre-pad bits and the post-pad bits is always one byte.
Claim 28
Dependent Claim
45 words
The Reed-Solomon encoder of claim 21 wherein the means for appending to the information bits a number of bits to make the sum divisible by ten is also a mean for determining the number of bits to be appended as the information bytes are received.
Claim 29
Dependent Claim
21 words
The Reed-Solomon coder of claim 234 wherein the sum of the pre-pad bits and the post-pad bits is always one byte.
Claim 30
Dependent Claim
45 words
The Reed-Solomon coder of claim 24 further comprised of means for providing a two-way interleave wherein even numbered symbols of an information polynomial are placed in a first codeword polynomial and odd numbered symbols of an information polynomial are placed in a second codeword polynomial.
Claim 31
Dependent Claim
152 words
In a Reed-Solomon decoder, a method of determining error locations and values comprising the steps of: (a) forming a residue in a k bit serial external XOR form of shift register; (b) converting the residue formed in step (a) to a time domain error syndrome; (c) converting the time domain error syndrome of step (b) to frequency domain error syndromes; and (d) determining error locations and values from the frequency domain syndromes wherein the Reed-Solomon decoder is operative on a codeword having a number of information bits in the information polynomial plus a number of pre-pad bits which is divisible by ten, and wherein the redundancy polynomial appended to the information polynomial and the pre-pad bits satisfies the GF(1024) generator polynomial: ##EQU26## where γ i =(ω i ) 32 , and wherein ω i are elements of a finite field generated by a GF(2) polynomial x.sup.10 +x.sup.9 +x.sup.5 +x.sup.4 +x.sup.2 +x.sup.1 +1.
Claim 32
Dependent Claim
152 words
In a Reed-Solomon decoder, a method of determining error locations and values comprising the steps of: (a) forming a residue in a k bit serial external XOR form of shift register; (b) converting the residue formed in step (a) to a time domain error syndrome; (c) converting the time domain error syndrome of step (b) to frequency domain error syndromes; and (d) determining error locations and values from the frequency domain syndromes wherein the Reed-Solomon decoder is operative on a codeword having a number of information bits in the information polynomial plus a number of pre-pad bits which is divisible by ten, and wherein the redundancy polynomial appended to the information polynomial and the pre-pad bits satisfies the GF(1024) generator polynomial: ##EQU26## where γ i =(ω i ) 32 , and wherein ω i are elements of a finite field generated by a GF(2) polynomial x.sup.10 +x.sup.9 +x.sup.5 +x.sup.4 +x.sup.2 +x.sup.1 +1.
Claim 33
Dependent Claim
604 words
In a decoder for an error detection and correction system using a Reed-Solomon code or a related code of degree d-1 for detection and correction of a plurality of errors in codewords of n symbols comprised of k data symbols and d-1 check symbols, wherein each symbol is comprised of m binary bits of information, an error decoding method comprising the steps of: storing said k data symbols in a data buffer; generating a residue polynomial T(x) having residue coefficients T j by multiplying a received codeword C'(x) by x d-1 and dividing by a generator polynomial G(x) of said code; storing said residue coefficients in a residue buffer; accessing said residue buffer to retrieve said residue polynomial T(x); computing a syndrome polynomial S(x) from said residue polynomial T(x); generating an error locator polynomial σ(x) from said syndrome polynomial S(x); locating errors using said error locator polynomial σ(x); evaluating said errors using said error locator polynomial σ(x) and said syndrome polynomial S(x); and applying said error information to said data symbols in said data buffer to correct symbols that are in error wherein the step of evaluating said errors using said error locator polynomial σ(x) and said syndrome polynomial S(x) comprises the steps of dividing said error locator polynomial σ(x) by (x+a L ) to produce a new error locator polynomial σ(x) and calculating an error value E from said syndrome polynomial S(x) and said new error locator polynomial σ(x) in a single software loop including: (1) initializing a counter g=1, a remainder R=1, a denominator D=1, and a numerator N=σ j ; (2) calculating a finite field sum of said remainder R and a finite field product of a finite field antilogarithm of said location L and said remainder R; (3) storing said finite field sum as said remainder R and as a coefficient σ g of said error locator polynomial σ(x); (4) calculating a finite field sum of said remainder R and a finite field product of a finite field antilogarithm of said location L and said denominator D; (5) storing said finite field sum as said denominator D; (6) calculating a finite field sum of said numerator N and a finite field product of said remainder R and a coefficient S j-g of said syndrome polynomial S(x); (7) storing said finite field sum as said numerator N; (8) incrementing said counter g; and (9) repeating steps (2) through (8) for values of said counter g up to and including j; (10) terminating error correction unsuccessfully if R, D, or N is equal to zero after steps (1) through (9); (11) calculating a finite field quotient of said numerator N and said denominator D; (12) recording a finite field logarithm of said finite field quotient as a parameter E'; (13) calculating a finite field product of said finite field quotient and a finite field antilogarithm of -L*m 0 ; (14) recording said finite field product as said error value E; and (15) adjusting coefficients of said syndrome polynomial S(x) in a software loop including the steps of: (a) initializing a counter g=0; (b) calculating a finite field antilogarithm of said parameter E'; (c) calculating a finite field sum of said finite field antilogarithm and a coefficient S j of said syndrome polynomial S(x); (d) storing said finite field sum as said coefficient S j ; (e) calculating a finite field sum of said parameter E' and said location L; (f) storing said finite field sum as said parameter E'; (g) incrementing said counter g; and (h) repeating steps (b) through (g) for values of said counter g up to and including j.
Claim 34
Dependent Claim
604 words
In a decoder for an error detection and correction system using a Reed-Solomon code or a related code of degree d-1 for detection and correction of a plurality of errors in codewords of n symbols comprised of k data symbols and d-1 check symbols, wherein each symbol is comprised of m binary bits of information, an error decoding method comprising the steps of: storing said k data symbols in a data buffer; generating a residue polynomial T(x) having residue coefficients T j by multiplying a received codeword C'(x) by x d-1 and dividing by a generator polynomial G(x) of said code; storing said residue coefficients in a residue buffer; accessing said residue buffer to retrieve said residue polynomial T(x); computing a syndrome polynomial S(x) from said residue polynomial T(x); generating an error locator polynomial σ(x) from said syndrome polynomial S(x); locating errors using said error locator polynomial σ(x); evaluating said errors using said error locator polynomial σ(x) and said syndrome polynomial S(x); and applying said error information to said data symbols in said data buffer to correct symbols that are in error wherein the step of evaluating said errors using said error locator polynomial σ(x) and said syndrome polynomial S(x) comprises the steps of dividing said error locator polynomial σ(x) by (x+a L ) to produce a new error locator polynomial σ(x) and calculating an error value E from said syndrome polynomial S(x) and said new error locator polynomial σ(x) in a single software loop including: (1) initializing a counter g=1, a remainder R=1, a denominator D=1, and a numerator N=σ j ; (2) calculating a finite field sum of said remainder R and a finite field product of a finite field antilogarithm of said location L and said remainder R; (3) storing said finite field sum as said remainder R and as a coefficient σ g of said error locator polynomial σ(x); (4) calculating a finite field sum of said remainder R and a finite field product of a finite field antilogarithm of said location L and said denominator D; (5) storing said finite field sum as said denominator D; (6) calculating a finite field sum of said numerator N and a finite field product of said remainder R and a coefficient S j-g of said syndrome polynomial S(x); (7) storing said finite field sum as said numerator N; (8) incrementing said counter g; and (9) repeating steps (2) through (8) for values of said counter g up to and including j; (10) terminating error correction unsuccessfully if R, D, or N is equal to zero after steps (1) through (9); (11) calculating a finite field quotient of said numerator N and said denominator D; (12) recording a finite field logarithm of said finite field quotient as a parameter E'; (13) calculating a finite field product of said finite field quotient and a finite field antilogarithm of -L*m 0 ; (14) recording said finite field product as said error value E; and (15) adjusting coefficients of said syndrome polynomial S(x) in a software loop including the steps of: (a) initializing a counter g=0; (b) calculating a finite field antilogarithm of said parameter E'; (c) calculating a finite field sum of said finite field antilogarithm and a coefficient S j of said syndrome polynomial S(x); (d) storing said finite field sum as said coefficient S j ; (e) calculating a finite field sum of said parameter E' and said location L; (f) storing said finite field sum as said parameter E'; (g) incrementing said counter g; and (h) repeating steps (b) through (g) for values of said counter g up to and including j.
Claim 35
Dependent Claim
261 words
In a decoder for an error detection and correction system using a Reed-Solomon code or related code of degree d-1 for detection and correction of a plurality of errors in codewords of n symbols comprised of k data symbols and d-1 check symbols, wherein each symbol is comprised of m binary bits of information, an error decoding method comprising the steps of: storing said k data symbols in a data buffer; generating a residue polynomial T(x) having residue coefficients T j by multiplying a received codeword C'(x) by x d-1 and dividing by a generator polynomial G(x) of said code; storing said residue coefficients in a residue buffer; accessing said residue buffer to retrieve said residue polynomial T(x); computing a syndrome polynomial S(x) from said residue polynomial T(x); generating an error locator polynomial σ(x) from said syndrome polynomial S(x); locating errors using said error locator polynomial σ(x); evaluating said errors using said error locator polynomial σ(x) and said syndrome polynomial S(x); and applying said error information to said data symbols in said data buffer to correct symbols that are in error wherein the Reed-Solomon decoder is operative on a codeword having a number of information bits in the information polynomial plus a number of pre-pad bits which is divisible by ten, and wherein the redundancy polynomial appended to the information polynomial and the pre-pad bits satisfies the GF(1024) generator polynomial; ##EQU27## where γ i =(ω i ) 32 , and wherein ω i are elements of a finite field generated by a GF(2) polynomial x.sup.10 +x.sup.9 +x.sup.5 +x.sup.4 +x.sup.2 +x.sup.1 +1.
Claim 36
Dependent Claim
261 words
In a decoder for an error detection and correction system using a Reed-Solomon code or related code of degree d-1 for detection and correction of a plurality of errors in codewords of n symbols comprised of k data symbols and d-1 check symbols, wherein each symbol is comprised of m binary bits of information, an error decoding method comprising the steps of: storing said k data symbols in a data buffer; generating a residue polynomial T(x) having residue coefficients T j by multiplying a received codeword C'(x) by x d-1 and dividing by a generator polynomial G(x) of said code; storing said residue coefficients in a residue buffer; accessing said residue buffer to retrieve said residue polynomial T(x); computing a syndrome polynomial S(x) from said residue polynomial T(x); generating an error locator polynomial σ(x) from said syndrome polynomial S(x); locating errors using said error locator polynomial σ(x); evaluating said errors using said error locator polynomial σ(x) and said syndrome polynomial S(x); and applying said error information to said data symbols in said data buffer to correct symbols that are in error wherein the Reed-Solomon decoder is operative on a codeword having a number of information bits in the information polynomial plus a number of pre-pad bits which is divisible by ten, and wherein the redundancy polynomial appended to the information polynomial and the pre-pad bits satisfies the GF(1024) generator polynomial; ##EQU27## where γ i =(ω i ) 32 , and wherein ω i are elements of a finite field generated by a GF(2) polynomial x.sup.10 +x.sup.9 +x.sup.5 +x.sup.4 +x.sup.2 +x.sup.1 +1.