RS code decoding method based on FFT optimization
Patent Information
- Application Number
- CN202510550106.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-29
- Publication Date
- 2026-10-30
AI Technical Summary
然而,现有的RS码译码大多基于随机错误模型或对抗错误模型,在突发错误模型下的研究相对较少
[0037]本发明通过对赋值点集的推广实现对赋值点集为循环群或其陪集时的RS[n,k]进行突发错误唯一译码方法,从而将吴氏算法推广到赋值点为循环群陪集的情况;通过针对RS码中的突发错误设计准线性时间的唯一译码方法,本方法能够实现渐进达到Singleton界的纠错能力;与现有技术相比,本发明实现对任意实数∈>0及任意整数e≥1,能对长度小于n-k-n∈(e+2)的RS[n,k]在突发错误模型下以不高于∈/qe-1的误纠概率进行唯一译码,特别地,当n为一个O(1)-平滑整数时,RS[n,k]的唯一译码可以通过本译码方法在的准线性复杂度时间内完成。
Smart Images

Figure CN123019753A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a technology in the field of communications, and specifically relates to an implementation method for Reed-Solomon (RS) decoding using Fast Fourier Transform (FFT) in a burst error scenario. Background Art
[0002] The existing encoding of Reed-Solomon (RS) codes adopts the Multiple Variable Point Evaluation (MPE) method, which treats information as a polynomial over a finite field , and generates redundant symbols by sampling the polynomial at different positions. However, most of the existing RS code decoding is based on the random error model or the adversarial error model, and there are relatively few studies under the burst error model. In addition, the existing Wu method can only perform decoding under the condition of the cyclic group evaluation point set, and has limited processing capability for more general cases. Summary of the Invention
[0003] Aiming at the burst errors in RS codes, the present invention proposes a unique decoding method for performing folding transform on RS codewords based on Fast Fourier Transform. Through this method, the RS code decoding problem can be transformed into an interleaved RS code (IRS for short) decoding problem, so that the transformed IRS code has a code length of constant size and can be decoded quickly. This method achieves quasi-linear time complexity, and the error correction capability can asymptotically reach the Singleton bound.
[0004] The present invention is realized by the following technical method:
[0005] The present invention relates to an optimized FFT-based RS code decoding method, which processes the RS code by using Fast Fourier Transform based on Galois group to transform the RS code into an interleaved RS code (IRS), transforms the burst error decoding problem of the RS code into the burst error decoding problem of the IRS, obtains the correct codeword through fast unique decoding of the IRS, and then completes decoding after inverse Fast Fourier Transform processing, which specifically includes:
[0006] Step 1: Perform parameter initialization and judgment on a given codeword, which specifically includes:
[0007] 1.1 According to the codeword r and the given finite field size q of the codeword, perform factorization on q as then we have Let the field extension
[0008] 1.2 According to the RS code parameters, the code length n and the original information bit number k where k<n, perform factorization on n and express it as the form, where:
[0009] 1.3 Determine the value of n: If n = t | q - 1, then proceed to step 4; otherwise... If w≥1, proceed to step 2.
[0010] Step 2: Perform auxiliary parameter pre-calculation for the codeword conversion operation, specifically including:
[0011] 2.1 Construct a system of order t based on parameters t and w. multiplicative subgroups A subspace of dimension w Then, construct the semi-direct product. for The ray-like subgroup, of order 1 And it satisfies n≤q.
[0012] 2.2 For 0 ≤ i ≤ w, calculate Among them: W i Let W be an i-dimensional subspace of W. For 1 ≤ k ≤ ... u, calculate Wherein: T k ≤T is a cyclic subgroup of T with order . Let r = w + μ, Let p be an integer for 1 ≤ i ≤ t. w+i =q i ,but calculate For G i A defined subfield of F satisfies And calculate with G i The corresponding number is |G i |x polynomial
[0013] 2.3 Calculation of Riemann-Roch space The base, specifically:
[0014] 2.4 Let F G =F q (x r ), calculate L(x)=∏ a∈W (x+α), choose Satisfying L(γ)≠0 and calculating x accordingly r -L(γ) t a set of zeros of size n Right now Based on the definition of this assignment point set
[0015] Step 3: Convert the original RS code to the homogeneous IRS code, specifically including:
[0016] 3.1 Let [n,k] be an encoding of length n. Carrying burst error bits Length satisfies Where: ∈ is a small positive parameter related to coding redundancy rate or fault tolerance rate, satisfying 0 < ∈ << 1; e represents the number of blocks with burst errors, and the parameter n is factored into... For any 1 ≤ s ≤ r, let As a factor of n, the corresponding definition Let G s ≤G is a sequence of order m s The subgroup of G is computed. s Fixed subdomain And calculate For a multi-point set In F s The restrictions on the above. For j = 1, 2, ..., n s ,calculate Then there is When set The assignment points in the middle are according to Arranged in this way, Through {x w -α i-1 L(γ)} in F s The zero set is calculated in n, where α is a value of size n. s Any generator of the multiplicative group; consider field extension. Similarly, if F is completely split, then RS[n,k] can be mapped to a homogeneous IRS code, as shown in the following equation, where: x u The Riemann-Roch space calculated in step 2.3 The base, then
[0017] 3.2 Selection n s =t. The original codeword r is divided into lengths m... s Folding yields a matrix The folding mentioned refers to, based on The permutation assumes that the codeword c f In and β j The corresponding m s Transpose the codeword vector of length n by assigning points to m. s ×n s A matrix, where: and The corresponding term is β j =α j-1 L(γ),
[0018] 3.3 For integers j∈[1,n] s Repeat the following operation for each column r of the matrix. j Perform G-IFFT transformation to obtain the polynomial
[0019] The aforementioned G-IFFT transform, namely the generalized inverse fast Fourier transform constructed by applying the rational function field and the automorphism group in Galois theory to the FFT, has an implementation for... The conversion between the values assigned to the n different positions of a polynomial f(x) of degree no higher than n and the n coefficients of the polynomial is as follows:
[0020] 3.4 For integers i∈[0,m] s -1], repeat the following operation: with As the only decoding method for step 4, the input is used to obtain the output.
[0021] 3.5 Perform a G-IFFT transformation on C(i) to obtain the polynomial
[0022] 3.6 Calculation
[0023] 3.7 Calculate and output the decoding result
[0024] Step 4: Perform burst error unique decoding on RS[n,k] whose assignment point set is a cyclic group or its coset, specifically including:
[0025] 4.1 For RS[n,k], where the assignment point set is a cyclic group or its coset, the parameters are as follows: assignment point set Given a coset of a cyclic group, find generator α and group element ξ such that α is a coset of a cyclic group. in: If the order is n, then RS[n,k] can be defined as... When RS codeword The length is n, and the number of burst error bits it carries is... satisfy
[0026] 4.2 Pre-calculation The Λ mentioned (i)(x) is defined as follows: Let r = nk, for a burst error interval [i, i + r - 2], it can always be regarded as a subset of [1, n] in the following way. Then the reciprocal error location corresponding to [i, i+r-2]
[0027] 4.3 Calculate r * The check polynomial S(x) = S0 + S1x + ... + S n-k-1 x n-k-1 Where: Let r * It consists of the correct codeword 'c' and the burst error 'e', where 'e' is the error length. satisfy A sudden error occurred. Then r * The check polynomial δ j =∏ k≠j (ξα j-1 -ξα k-1 ) -1 ;
[0028] 4.4 Calculation
[0029] 4.5 In the set {1, α, ..., α} n-1 Calculate the roots of Γ(x) in}. According to the definitions of S(x) and Γ(x) above, when When Γ(x) possesses Given a sequence of consecutive roots, find the longest consecutive root sequence. Then record the starting position i and the sequence length.
[0030] 4.6 Use the erase location of the record For r * The erase decoding process includes:
[0031] i) Calculation and its derivative λ′(c).
[0032] ii) Compute F(x)∈F using the inverse fast Fourier transform q [x] <n Such that F(x) satisfies the following condition:
[0033] when Then we have F(ξα) j-1 )=λ(ξα j-1 )r j ;when Then F(ξα) j-1 ) = 0. Then calculate the derivative F′(x) of F(x).
[0034] iii) For j∈[i,i+i-1], calculate the codeword c j =F′(ξα) j-1 )λ(ξα j-1 ) -1 ;for Calculate codeword c j =r j .
[0035] 4.7 The output corrected codewords are (c1, c2, ..., c n ).
[0036] The present invention relates to a system for implementing the above method, comprising: a transformation unit and a decoding unit, wherein: the transformation unit maps the original codeword to a representation of a homogeneous interleaved RS code in which the assignment point set is a cyclic group or a coset of a cyclic group by calculating the assignment point set and constructing a correlation polynomial; the decoding unit performs a unique decoding operation on the assignment points of the cyclic group and its coset. Technical effect
[0037] This invention provides a unique decoding method for burst errors of RS[n,k] when the assignment point set is a cyclic group or its coset, by extending the assignment point set. This extends Wu's algorithm to the case where the assignment points are cosets of a cyclic group. By designing a quasi-linear-time unique decoding method for burst errors in RS codes, this method can asymptotically achieve Singleton bound error correction capability. Compared with existing technologies, this invention achieves a unique decoding method for RS[n,k] of length less than nkn∈(e+2) under the burst error model with a time not exceeding ∈ / q for any real number ∈>0 and any integer e≥1. e-1 The error correction probability is used for unique decoding. In particular, when n is an O(1)-smooth integer, the unique decoding of RS[n,k] can be achieved using this decoding method. It can be completed in quasi-linear time complexity. Attached Figure Description
[0038] Figure 1 This is a flowchart of the present invention;
[0039] Figure 2 This is a flowchart of Example 1;
[0040] Figure 3 This is a flowchart of Example 2. Detailed Implementation Example 1
[0041] like Figure 2 As shown, this embodiment relates to a conversion and decoding method, including:
[0042] Step 1. Take q = 256 = 44 ,
[0043] Step 2. For n = 192 = 4 3 ·3, Yes w=3, but
[0044] Step 3. Yes in:, but
[0045] Step 4. Select γ = u3, and L(γ) ≠ 0, then x4 - L(γ) 3 The zero set is There are a total of n = 192 points. The RS code can be written as...
[0046] Step 5. Partitioning the set of assignment points in:
[0047] Step 6. Codeword r = (c1, c2, ..., c 64 ,c 65 ,…,c 128 ,c 129 ,…,c 192 After folding, a Fourier transform is performed:
[0048] Step 7. Run decoding method 1 with the assignment point set being a cyclic group, and obtain the output as follows. Perform a G-IFFT transform on C(i) to obtain the polynomial calculate Calculate and return Example 2
[0049] like Figure 3 As shown, this embodiment relates to a decoding method where the assignment point set is a cyclic group or its coset, comprising:
[0050] Step 1: Select a finite field The codeword length n = 6, the number of information symbols k = 3, the generator of the cyclic group α = 3, the starting point of the coset of the cyclic group ξ = 2, and the received codeword r = [r1, r2, r3, r4, r5, r6].
[0051] Step 2, Pre-calculate Λ (1) (x). By definition, Λ (1) (x) is a polynomial generated by ξ and α: For n=6 and k=3, we have nk-1=2. Therefore: Λ (1) (x)=(1-2×3 0 x)(1-2×3 1 x). Simplified to: Λ (1) (x)=(1-2x)(1-6x)≡5x 2 +6x+1-(mod7).
[0052] Step 3: Based on the check polynomial The calculation yields: S(x) = r1(5+3x+6x 2 )+r2(2+5x+2x 2 )+r3(3+5x+6x 2 )+r4(2+3x+x 2 )+r5(6+6x+ 6x 2 )+r6(4+5x+6x 2 )=S0+S1x+S2x 2 .
[0053] Step 4, Calculation Here Λ (1) (x)=5x 2 +6x+1, S(x)= S0+S1x+S2x 2 Therefore, we have: Γ(x)≡S² + 6S¹x + 5S₀x 2 -(mod7).
[0054] Step 5: Calculate Γ(x) = S² + 6S₁x + 5S₀x 2 The root is found by substituting α into powers of 3.
[0055] Step 6: Correct errors using the error location.
[0056] For the codeword parameters n=192, k=100 in the two embodiments described above, When e = 1, its corresponding decoding radius can be calculated. Decoding radius of this method This method can achieve a better decoding radius.
[0057] Compared to existing techniques, this method utilizes Fast Fourier Transform (FFT) to achieve unique and list-based decoding of Reed-Solomon codes and algebraic geometric codes under burst error scenarios, while achieving quasi-linear time complexity (O(nlogn)) under the premise that the decoding radius reaches the Singleton bound. This improvement not only enhances the efficiency of the method but also expands its applicability to scenarios involving sets of non-cyclic group assignment points, significantly optimizing the cubic time complexity compared to existing Wu's methods.
[0058] Specific implementations may be partially adjusted by those skilled in the art in different ways without departing from the principles and purpose of this invention. The scope of protection of this invention is defined by the claims and is not limited by specific implementations. All implementation methods within the scope of this invention are subject to the constraints of this invention.
Claims
1. An optimized decoding method for RS codes based on FFT, characterized in that, By using the Galois group-based Fast Fourier Transform, the RS code is converted into an interleaved RS code (IRS), and the burst error decoding problem of the RS code is transformed into the burst error decoding problem of the IRS. After obtaining the correct codeword through fast unique decoding of the IRS, the decoding is completed by inverse Fast Fourier Transform.
2. The FFT-based RS code optimization decoding method according to claim 1, characterized in that, specifically... include: Step 1: Initialize and determine the parameters for the given codeword; Step 2: Perform auxiliary parameter pre-calculation for codeword conversion operation; Step 3: Convert the original RS code to the homogeneous IRS code; Step 4: Perform burst error unique decoding on RS[n,k] where the assignment point set is a cyclic group or its coset.
3. The FFT-based RS code optimization decoding method according to claim 2, characterized in that, Step 1 specifically includes: 1.1 Based on the codeword r and the given finite field size q of the codeword, factorize q into q = l. u Then there is Domain extension 1.2 According to the code length n of RS code parameters and the number of original information bits k where n < n, perform factorization on n and express it as n = tl w , where t < l; 1.3 Determine the value of n: If n = t | q - 1, then proceed to step 4; otherwise, if n = 1 w If t and w≥1, proceed to step 2.
4. The FFT-based RS code optimization decoding method according to claim 2, characterized in that, Step 2 specifically includes: 2.1 Construct a system of order t based on parameters t and w. multiplicative subgroups A subspace of dimension w Then, construct the semi-direct product. for The ray-like subgroup of order n = tl w |q(q-1) and satisfy n≤q; 2.2 For 0 ≤ i ≤ w, calculate Among them: W i Let W be an i-dimensional subspace of W. For 1 ≤ k ≤ μ, compute... Wherein: T k ≤T is a cyclic subgroup of T with order . Let r = w + μ, p1 = ... = p w =l, for 1≤i≤t let p w+i =q i ,but calculate For G i A defined subfield of F satisfies And calculate with G i The corresponding number is |G i |x polynomial 2.3 Calculation of Riemann-Roch space The base, specifically: 2.4 Let F G =F q (x r ), calculate L(x)=∏ α∈W (x+α), choose Satisfying L(γ)≠0 and calculating x accordingly r -L(γ) t a set of zeros of size n Right now Based on the definition of this assignment point set 5. The FFT-based RS code optimization decoding method according to claim 2, characterized in that, Step 3 specifically includes: 3.1 Let [n,k] be an encoding of length n. Carrying burst error bits Length satisfies Where: ∈ is a small positive parameter related to coding redundancy rate or fault tolerance rate, satisfying 0 < ∈ < < 1; e represents the number of blocks with burst errors, and the parameter n is factored into... For any 1 ≤ s ≤ r, let As a factor of n, the corresponding definition Let G s ≤G is a sequence of order m s The subgroup of G is computed. s Fixed subdomain And calculate For a multi-point set In F s The restrictions on the above, for j = 1, 2, ..., n s ,calculate Then there is When set The assignment points in the middle are according to Arranged in this way, Through {x w -α i-1 L(γ)} in F s The zero set is calculated in n, where α is a value of size n. s Any generator of the multiplicative group; consider field extension. Similarly, if F is completely split, then RS[n,k] is mapped to a homogeneous IRS code, as shown in the following equation, where: x u The Riemann-Roch space calculated in step 2.3 The base, then 3.2 Select m s =l w ,n s =t, divide the original codeword r according to length m s Folding yields a matrix The folding mentioned refers to, based on The permutation assumes that the codeword c f In and β j The corresponding m s Transpose the assignment points to convert a codeword vector of length n to m. s ×n s A matrix, where: and The corresponding term is β j =α j-1 L(γ), 3.3 For integers j∈[1,n] s Repeat the following operation for each column r of the matrix. j Perform G-IFFT transformation to obtain the polynomial 3.4 For integers i∈[0,m] s -1], repeat the following operation: with As the only decoding method for step 4, the input is used to obtain the output. 3.5 Perform a G-IFFT transformation on C(i) to obtain the polynomial 3.6 Calculation 3.7 Calculate and output the decoding result 6. The FFT-based RS code optimization decoding method according to claim 2, characterized in that, Step 4 specifically includes: 4.1 For RS[n,k], where the assignment point set is a cyclic group or its coset, the parameters are as follows: assignment point set Given a coset of a cyclic group, find generator α and group element ξ such that α is a coset of a cyclic group. in: If the order is n, then RS[n,k] is defined as When RS codeword The length is n, and the number of burst error bits it carries is... satisfy 4.2 Pre-calculation The Λ mentioned (i) (x) is defined as follows: Let r = nk, for a burst error interval [i, i + r - 2], it is always regarded as a subset of [1, n] in the following way. Then the reciprocal error location corresponding to [i, i+r-2] 4.3 Calculate r * The check polynomial S(x) = S0 + S1x + ... + S n-k-1 x n-k-1 Where: Let r * It consists of the correct codeword 'c' and the burst error 'e', where 'e' is the error length. satisfy If a sudden error occurs, then r * The check polynomial 4.4 Calculation 4.5 In the set {1, α, ..., α} n-1 In the expression}, the roots of Γ(x) are calculated. According to the definitions of S(x) and Γ(x) above, when When Γ(x) possesses Given a sequence of consecutive roots, find the longest consecutive root sequence. Then record the starting position i and the sequence length. 4.6 Use the erase location of the record For r * Perform erasure decoding; 4.7 The output corrected codewords are (c1, c2, ..., c n ).
7. The FFT-based RS code optimization decoding method according to claim 5, characterized in that, The aforementioned G-IFFT transform, namely the generalized inverse fast Fourier transform constructed by applying the rational function field and the automorphism group in Galois theory to the FFT, has an implementation for... The conversion between the assignments of values at n different positions to the n coefficients of a polynomial f(x) of degree no higher than n is as follows:
8. The FFT-based RS code optimization decoding method according to claim 6, characterized in that, Step 4.6 specifically includes: i) Calculation and its derivative λ′(x); ii) Compute F(x)∈F using the inverse fast Fourier transform q [x] <n Such that F(x) satisfies the following condition: when Then we have F(ξα) j-1 )=λ(ξα j-1 )r j ;when Then F(ξα) j-1 If F(x) = 0, then calculate the derivative F′(x) of F(x); iii) For Calculate codeword c j =F′(ξα) j-1 )λ(ξα j-1 ) -1 ;for Calculate codeword c j =r j .
9. A RS code optimization decoding system based on FFT that implements the method of any one of claims 1-8, characterized in that, include: Transformation unit and decoding unit, wherein: the transformation unit maps the original codeword to a homogeneous interleaved RS code in which the assignment point set is a cyclic group or a coset of a cyclic group by calculating the assignment point set and constructing a correlation polynomial; The decoding unit performs a unique decoding operation on the assignment points of the cyclic group and its cosets.
