A decoding method and related device

CN116746067BActive Publication Date: 2026-10-27HUAWEI TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202180088913.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-04-27
Publication Date
2026-10-27
Estimated Expiration
2041-04-27

AI Technical Summary

Technical Problem

[0008]然而,快速Euclidean算法的求解过程中直接使用伴随式这一多维数据进行多项式求解,使得上述基于FFT的RS译码方案的计算维度较高,导致RS的译码过程较为复杂

Benefits of technology

[0079]上述第二方面至第六方面及其实现方式的实现过程及有益效果可以参考第一方面及其实现方式的描述。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116746067B_ABST
    Figure CN116746067B_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a decoding method and related equipment, which are used to simplify the process of solving error locator polynomial and error value polynomial through divide-and-conquer strategy, and improve the processing efficiency of error correction of RS code. In the method, a concomitant of first data is determined, the first data being data encoded based on Reed-Solomon (RS) code, wherein a first correlation relationship is satisfied among the concomitant, the error locator polynomial and the error value polynomial, and the dimension of the first correlation relationship is ρ; ρ element pairs are determined according to the concomitant; the ρ element pairs are decomposed based on the divide-and-conquer strategy to obtain at least two partial element pairs; the error locator polynomial and the error value polynomial are determined according to the at least two partial element pairs and the first correlation relationship; and the first data is corrected according to the error locator polynomial and the error value polynomial to obtain corrected data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communications, and more particularly to a decoding method and related equipment. Background Technology

[0002] Reed-Solomon (RS) codes are a common type of error-correcting code, mainly used to correct transmission errors that occur in communication channels. They have strong error-correcting capabilities, especially for short-to-medium code lengths and burst errors, and have good error-correcting performance. Due to their simple implementation, they are widely used in digital communication and storage systems, such as Ethernet standards, optical communication, and common QR codes.

[0003] Generally, the decoding process of RS codes can be achieved through the Fast Fourier Transform (FFT) process. The FFT-based RS decoding scheme can be divided into the following steps:

[0004] 1. Calculate the syndrome;

[0005] 2. The key equation containing the adjoint is solved using the fast Euclidean algorithm to obtain the error position polynomial and the error value polynomial.

[0006] 3. Use FFT to search for the roots of the erroneous polynomial in the erroneous position polynomial and the erroneous value polynomial;

[0007] 4. Calculate the error value using the Fourier algorithm.

[0008] However, the fast Euclidean algorithm directly uses the adjoint equation, a multidimensional data, for polynomial solving, which makes the computational dimension of the aforementioned FFT-based RS decoding scheme high, resulting in a more complex RS decoding process.

[0009] Therefore, how to reduce the decoding complexity of RS codes is a technical problem that urgently needs to be solved. Summary of the Invention

[0010] This application provides a decoding method and related equipment, which simplifies the process of solving the error position polynomial and the error value polynomial through a divide-and-conquer strategy, thereby improving the processing efficiency of error correction for RS codes.

[0011] The first aspect of this application provides a decoding method, which can be executed by a decoding device. The decoding device can be a transmitter (including network equipment or terminal equipment) or a component of the transmitter (e.g., a processor, chip, or chip system). In this method, the decoding device first determines the syndrome of first data, which is data encoded based on Reed-Solomon RS code. The syndrome, error position polynomial, and error value polynomial satisfy a first correlation relationship, the dimension of which is ρ. Then, the decoding device determines ρ element pairs based on the syndrome. Subsequently, the decoding device decomposes the ρ element pairs using a divide-and-conquer strategy to obtain at least two partial element pairs. Further, the decoding device determines the error position polynomial and the error value polynomial based on the at least two partial element pairs and the first correlation relationship. Finally, the decoding device corrects the first data based on the error position polynomial and the error value polynomial to obtain corrected data.

[0012] Based on the above technical solution, after determining the syndrome of the first data, the decoding device decomposes the corresponding ρ element pairs of the syndrome using a divide-and-conquer strategy to obtain at least two partial element pairs. Then, based on these at least two partial element pairs, it determines the error position polynomial and error value polynomial corresponding to the syndrome, thereby correcting the first data to obtain the corrected data. The divide-and-conquer strategy simplifies the process of solving the error position polynomial and error value polynomial, reducing the complexity of the solution process and improving the processing efficiency of RS code error correction.

[0013] In one possible implementation of the first aspect of this application, the at least two partial element pairs include a first partial element pair and a second partial element pair. Specifically, the process by which the decoding device determines the error location polynomial and the error value polynomial based on the at least two partial element pairs and the first correlation relationship may include: the decoding device determining a first polynomial matrix based on the first partial element pair, wherein the first polynomial matrix has 2 rows and 2 columns, and the element pairs in each row of the first polynomial matrix satisfy the first correlation relationship; the decoding device then updating the second partial element pair based on the Fourier transform result of the first polynomial matrix to obtain an updated second partial element pair, and determining a second polynomial matrix based on the updated second partial element pair and the rank of the first polynomial matrix, wherein the second polynomial matrix has 2 rows and 2 columns, and the element pairs in each row of the second polynomial matrix satisfy the first correlation relationship; thereafter, the decoding device determining the error location polynomial and the error value polynomial based on the first polynomial matrix and the second polynomial matrix.

[0014] Based on the above technical solution, the at least two partial element pairs obtained by the divide-and-conquer strategy include at least a first partial element pair and a second partial element pair. In the process of the decoding device determining the error position polynomial and the error value polynomial based on the at least two partial element pairs and the first correlation relationship, iterative operations can be performed based on the at least two partial element pairs to determine the error position polynomial and the error value polynomial.

[0015] In one possible implementation of the first aspect of this application, the process by which the decoding device determines the error position polynomial and the error value polynomial based on the first polynomial matrix and the second polynomial matrix may specifically include: the decoding device calculating the product of the Fourier transform result of the first polynomial matrix and the Fourier transform result of the second polynomial matrix according to the convolution theorem to obtain a first target matrix, and performing an inverse Fourier transform on the first target matrix to obtain a second target matrix; thereafter, the decoding device determines the error position polynomial and the error value polynomial based on the second target matrix.

[0016] Based on the above technical solution, the decoding device can extract the frequency domain features of the first polynomial matrix and the second polynomial matrix through Fourier transform, and perform convolution processing on the two extracted frequency domain features so that the first target matrix obtained by convolution processing can be used to represent the first polynomial matrix and the second polynomial matrix. The corresponding time domain features are obtained by inverse Fourier transform. Compared with the method without frequency domain transformation processing, the complexity of the calculation process can be reduced.

[0017] In one possible implementation of the first aspect of the present application, the process by which the decoding device determines the error position polynomial and the error value polynomial based on the second target matrix may specifically include: the decoding device determining the elements of the row with the smallest rank in the second target matrix as the error position polynomial and the error value polynomial.

[0018] Based on the above technical solution, after obtaining the second target matrix, the decoding device can determine the two elements of the row with the smallest rank in the second target matrix as the error position polynomial and the error value polynomial, respectively.

[0019] In one possible implementation of the first aspect of the embodiments of this application, the first association relationship includes a first equation, which is:

[0020]

[0021] Where z1(x) is the error value polynomial, s(x) is the adjoint polynomial, λ(x) is the error position polynomial, and ρ = 2 m -k and ω i-1 And β is a finite field (2m In the set of elements (k), mod represents the modulo operation, and ∏ represents factorial.

[0022] Based on the above technical solution, the encoding and decoding process of RS code can be processed based on a finite field structure, where ρ = 2. m -k and ω i-1 And β is a finite field (2 m For the elements in (k), this implementation provides a specific way to realize the first association relationship through the first equation. Other implementation forms can be obtained by equivalent transformation of the first equation, which is not limited here.

[0023] In one possible implementation of the first aspect of the embodiments of this application, the ρ element pairs are (D i G i ), where D i =s(w i-1 +β),G i =1, and i=1,2,...,ρ;

[0024] The at least two partial element pairs include a first partial element pair and a second partial element pair, wherein the first partial element pair includes (D i G i ), i = 1, 2, ..., η; the second part of the element pairs includes (D i G i ), i = η+1, η+2, ..., ρ.

[0025] Based on the above technical solution, the encoding and decoding process of RS code can be processed based on the structure of finite fields. This implementation provides a specific implementation form of ρ element pairs and corresponding first part element pairs and second part element pairs. Other representation forms can be obtained through equivalent transformations, which are not limited here.

[0026] In one possible implementation of the first aspect of this application, the rank of the first polynomial matrix is ​​a positive integer r. 0,0 and r 0,1 , and r 0,0 +r 0,0 =2η+1; correspondingly, the rank of the second polynomial matrix is ​​the positive integers r0^ and r1^, and r0^+r1^=2ρ+1.

[0027] Based on the above technical solution, the encoding and decoding process of RS code can be processed based on the structure of finite fields. This implementation provides a specific implementation of the first polynomial matrix and the second polynomial matrix. Other representations can be obtained through equivalent transformations, which are not limited here.

[0028] In one possible implementation of the first aspect of this application, the at least two partial element pairs include a target element pair, and the second equation obtained by substituting the target element pair into the first equation has a dimension of 1, wherein the solution to the second equation is:

[0029]

[0030] or,

[0031]

[0032] Optionally, the target element pair may be contained within the first part of the element pair, or the target element pair may be contained within the second part of the element pair.

[0033] Based on the above technical solution, at least two pairs of partial elements obtained through the divide-and-conquer strategy include at least one target element pair such that substituting it into the first equation yields a second equation with a computational dimension of 1. This implementation provides a specific form of the solution to the second equation, where other representations can be obtained through equivalent transformations, which are not limited here.

[0034] In one possible implementation of the first aspect of the embodiments of this application,

[0035] The value of rank[z1(x),λ(x)] = max{2 degλ(x),2 deg(z1(x))+1} is not odd, where rank[] represents the rank of the polynomial pair, max{} represents the maximum value, and deg represents the degree of the polynomial.

[0036] Based on the above technical solution, when the value of rank[z1(x),λ(x)]=max{2 degλ(x),2 deg(z1(x))+1} is odd, the first data can be determined to be undecodeable data.

[0037] In one possible implementation of the first aspect of the embodiments of this application, the syntactic includes at least one non-zero element.

[0038] Based on the above technical solution, if all elements contained in the syntactic equation are 0, the decoding device can determine that the first data has not been erroneously interfered with and does not require error correction, and the decoding device will not need to decode.

[0039] In one possible implementation of the first aspect of the present application, the number of roots of the erroneous position polynomial is the same as the order of the erroneous position polynomial.

[0040] Based on the above technical solution, if the number of roots of the erroneous position polynomial is different from the order of the erroneous position polynomial, then the interference received by the codeword is an uncorrectable error. The decoder device will identify the first data as undecorable data and directly exit the decoding process.

[0041] A second aspect of this application provides a decoding apparatus, comprising:

[0042] The first determining unit is used to determine the syndrome of the first data, which is data encoded based on Reed-Solomon RS code, wherein the syndrome, the error position polynomial and the error value polynomial satisfy a first correlation relationship, and the dimension of the first correlation relationship is ρ.

[0043] The second determining unit is used to determine ρ element pairs according to the syndrome;

[0044] A decomposition unit is used to decompose the ρ element pairs based on a divide-and-conquer strategy to obtain at least two partial element pairs.

[0045] The third determining unit is used to determine the error position polynomial and the error value polynomial based on the at least two partial element pairs and the first association relationship;

[0046] The error correction unit is used to correct the first data according to the error position polynomial and the error value polynomial to obtain the corrected data.

[0047] In one possible implementation of the second aspect of this application, the at least two partial element pairs include a first partial element pair and a second partial element pair, and the third determining unit is specifically used for:

[0048] The first polynomial matrix is ​​determined based on the first part of the element pairs, wherein the number of rows and columns of the first polynomial matrix are both 2, and the element pairs of each row of the first polynomial matrix satisfy the first association relationship;

[0049] Based on the Fourier transform result of the first polynomial matrix, update the second part of the element pair to obtain the updated second part of the element pair;

[0050] The second polynomial matrix is ​​determined based on the updated second part of the element pairs and the rank of the first polynomial matrix, wherein the number of rows and columns of the second polynomial matrix are both 2, and the elements of each row of the second polynomial matrix satisfy the first association relationship.

[0051] The error position polynomial and the error value polynomial are determined based on the first polynomial matrix and the second polynomial matrix.

[0052] In one possible implementation of the second aspect of the embodiments of this application, the third determining unit is specifically used for:

[0053] The first target matrix is ​​obtained by multiplying the Fourier transform result of the first polynomial matrix and the Fourier transform result of the second polynomial matrix according to the convolution theorem.

[0054] The second target matrix is ​​obtained by performing an inverse Fourier transform on the first target matrix;

[0055] The error location polynomial and the error value polynomial are determined based on the second objective matrix.

[0056] In one possible implementation of the second aspect of the embodiments of this application, the third determining unit is specifically used for:

[0057] The elements of the row with the smallest rank in the second target matrix are determined as the error position polynomial and the error value polynomial.

[0058] In one possible implementation of the second aspect of this application, the first association relationship includes a first equation, which is:

[0059]

[0060] Where z1(x) is the error value polynomial, s(x) is the adjoint polynomial, λ(x) is the error position polynomial, and ρ = 2 m -k and ω i-1 And β is a finite field (2 m In the set of elements (k), mod represents the modulo operation, and ∏ represents factorial.

[0061] In one possible implementation of the second aspect of the embodiments of this application, the ρ element pairs are (D i G i ), where D i =s(w i-1 +β),G i =1, and i=1,2,...,ρ;

[0062] The at least two partial element pairs include a first partial element pair and a second partial element pair, wherein the first partial element pair includes (D i G i ), i = 1, 2, ..., η; the second part of the element pairs includes (D i G i ), i = η+1, η+2, ..., ρ.

[0063] In one possible implementation of the second aspect of the embodiments of this application,

[0064] The rank of the first polynomial matrix is ​​a positive integer r. 0,0 and r 0,1 , and r0,0 +r 0,0 =2η+1;

[0065] The rank of the second polynomial matrix is ​​a positive integer r0^ and r1^, and r0^+r1^=2ρ+1.

[0066] In one possible implementation of the second aspect of this application, the at least two partial element pairs include a target element pair, and the second equation obtained by substituting the target element pair into the first equation has a dimension of 1, wherein the solution to the second equation is:

[0067]

[0068] or,

[0069]

[0070] In one possible implementation of the second aspect of the embodiments of this application,

[0071] The value of rank[z1(x),λ(x)] = max{2 degλ(x),2 deg(z1(x))+1} is not odd, where rank[] represents the rank of the polynomial pair, max{} represents the maximum value, and deg represents the degree of the polynomial.

[0072] In one possible implementation of the second aspect of the embodiments of this application, the syntactic includes at least one non-zero element.

[0073] In one possible implementation of the second aspect of the present application, the number of roots of the erroneous position polynomial is the same as the order of the erroneous position polynomial.

[0074] A third aspect of this application provides a computer-readable storage medium storing a computer program, the computer program including program instructions that, when executed by a computer, cause the computer to perform the method described in the first aspect.

[0075] A fourth aspect of this application provides a computer program product storing a computer program, the computer program including program instructions, which, when executed by a computer, cause the computer to perform the method described in the first aspect.

[0076] A fifth aspect of this application provides a decoding apparatus, comprising: a memory for storing a program; and a processor for executing the program stored in the memory. When the program stored in the memory is executed, the processor executes a method in any implementation of the first aspect.

[0077] A sixth aspect of this application provides a chip system including at least one processor for supporting a decoding device to implement the functions involved in the first aspect or any possible implementation of the first aspect.

[0078] In one possible design, the chip system may further include a memory for storing program instructions and data necessary for the first communication device. The chip system may be composed of chips or may include chips and other discrete devices. Optionally, the chip system may also include interface circuitry that provides program instructions and / or data to the at least one processor.

[0079] The implementation process and beneficial effects of the second to sixth aspects and their implementation methods can be referred to the description of the first aspect and its implementation methods.

[0080] As can be seen from the above technical solution, after determining the syndrome of the first data, the syndrome is decomposed into at least two partial element pairs based on the divide-and-conquer strategy. Then, the error position polynomial and error value polynomial corresponding to the syndrome are determined based on these at least two partial element pairs, thereby correcting the first data to obtain the corrected data. The divide-and-conquer strategy simplifies the process of solving the error position polynomial and error value polynomial, improving the processing efficiency of RS code error correction. Attached Figure Description

[0081] Figure 1 A schematic diagram of a decoding method provided in an embodiment of this application;

[0082] Figure 2 Another schematic diagram of a decoding method provided in an embodiment of this application;

[0083] Figure 3 A schematic diagram of a decoding device provided in an embodiment of this application;

[0084] Figure 4 Another schematic diagram of a decoding device provided in an embodiment of this application;

[0085] Figure 5 Another schematic diagram of a decoding device provided in an embodiment of this application. Detailed Implementation

[0086] The technical solutions of the embodiments of this application will be described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.

[0087] First, some terms used in the embodiments of this application will be explained to facilitate understanding by those skilled in the art.

[0088] (1) Terminal device: can be a wireless terminal device that can receive network device scheduling and instruction information. The wireless terminal device can be a device that provides voice and / or data connectivity to the user, or a handheld device with wireless connection function, or other processing device connected to a wireless modem.

[0089] Terminal devices can communicate with one or more core networks or the Internet via a radio access network (RAN). Terminal devices can be mobile terminal devices, such as mobile phones (or "cellular" phones), computers, and data cards. For example, they can be portable, pocket-sized, handheld, computer-embedded, or vehicle-mounted mobile devices that exchange voice and / or data with the RAN. Examples include personal communication service (PCS) phones, cordless phones, session initiation protocol (SIP) phones, wireless local loop (WLL) stations, personal digital assistants (PDAs), tablets, and computers with wireless transceiver capabilities. Wireless terminal equipment can also be referred to as a system, subscriber unit, subscriber station, mobile station, mobile station (MS), remote station, access point (AP), remote terminal, access terminal, user terminal, user agent, subscriber station (SS), customer premises equipment (CPE), terminal, user equipment (UE), mobile terminal (MT), etc. Terminal equipment can also be wearable devices and next-generation communication systems, such as terminal equipment in 5G communication systems or terminal equipment in future public land mobile networks (PLMNs).

[0090] (2) Network equipment: This can be equipment within a wireless network. For example, network equipment can be a radio access network (RAN) node (or device) that connects terminal devices to the wireless network, and can also be called a base station. Currently, some examples of RAN equipment include: generation Node B (gNodeB), transmission reception point (TRP), evolved Node B (eNB), radio network controller (RNC), Node B (NB), basestation controller (BSC), base transceiver station (BTS), home base station (e.g., home evolved Node B, or home Node B (HNB)), base band unit (BBU), or wireless fidelity (Wi-Fi) access point (AP), etc. In addition, in a network structure, network equipment can include centralized unit (CU) nodes, distributed unit (DU) nodes, or RAN equipment including CU nodes and DU nodes.

[0091] Furthermore, in other possible cases, the network device can be any other device that provides wireless communication functionality to the terminal device. The embodiments of this application do not limit the specific technology or device form used in the network device. For ease of description, the embodiments of this application are not limited.

[0092] Network equipment may also include core network equipment, such as access and mobility management function (AMF), user plane function (UPF), or session management function (SMF).

[0093] In this application embodiment, the device for implementing the function of the network device can be the network device itself, or it can be a device capable of supporting the network device in implementing that function, such as a chip system, which can be installed in the network device. In the technical solutions provided in this application embodiment, the example of a network device being used to implement the function of the network device is used to describe the technical solutions provided in this application embodiment.

[0094] (3) The terms "system" and "network" in the embodiments of this application can be used interchangeably. "At least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist simultaneously, or B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the related objects before and after are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, "at least one of A, B and C" includes A, B, C, AB, AC, BC or ABC. And, unless otherwise specified, the ordinal numbers such as "first" and "second" mentioned in the embodiments of this application are used to distinguish multiple objects and are not used to limit the order, sequence, priority or importance of multiple objects.

[0095] Please see Figure 1 This is a schematic diagram of an application scenario provided by an embodiment of this application. Figure 1 The example illustrates a network device 101 and six terminal devices, namely terminal device 1, terminal device 2, terminal device 3, terminal device 4, terminal device 5, and terminal device 6. Figure 1 In the example shown, terminal device 1 is a smart teacup, terminal device 2 is a smart air conditioner, terminal device 3 is a smart gas pump, terminal device 4 is a vehicle, terminal device 5 is a mobile phone, and terminal device 6 is a printer.

[0096] like Figure 1 As shown, in the communication process, the sending device (or transmitter, transmitting device) can be a network device, and the receiving device (or receiver, receiving device) can be a terminal device; or, the sending device can be a terminal device, and the receiving device can be a network device; or, both the sending device and the receiving device can be network devices; or, both the sending device and the receiving device can be terminal devices.

[0097] by Figure 1 Taking the scenario shown as an example, the decoding device provided in this application embodiment can be Figure 1Any receiving device in the process, wherein the transmitting device can encode the data / signaling to be transmitted based on RS code to obtain encoded data, and then transmit the encoded data through a wired connection (e.g., fiber optic communication connection, metal wire connection, etc.) / wireless connection (e.g., short-range communication methods, including Bluetooth, Wi-Fi, etc.; or long-range communication methods, including Long Term Evolution (LTE) system, New Radio (NR) system, etc.), so that the receiving device receives the encoded data (e.g., the first data mentioned later), and uses the decoding method provided in the embodiments of this application to decode the encoded data to obtain the decoded data (e.g., the error-corrected data mentioned later).

[0098] Furthermore, the embodiments of this application can also be applied to Figure 1 The data / signaling transmission process within the terminal device shown, such as the digital communication and storage system within the terminal device itself, is decoded using the decoding method provided in the embodiments of this application. Alternatively, when the terminal device collects external information (e.g., a camera collects a QR code) through its own or external data acquisition device, the information collected is decoded using the decoding method provided in the embodiments of this application. No limitation is made here.

[0099] Reed-Solomon (RS) codes are a common type of error-correcting code, mainly used to correct transmission errors that occur in communication channels. They have strong error-correcting capabilities, especially for short-to-medium code lengths and burst errors, and have good error-correcting performance. Due to their simple implementation, they are widely used in digital communication and storage systems, such as Ethernet standards, optical communication, and common QR codes.

[0100] Generally, the decoding process of RS codes can be achieved through the Fast Fourier Transform (FFT) process. The FFT-based RS decoding scheme can be divided into the following steps:

[0101] 1. Calculate the syndrome;

[0102] 2. The key equation containing the adjoint is solved using the fast Euclidean algorithm to obtain the error position polynomial and the error value polynomial.

[0103] 3. Use FFT to search for the roots of the erroneous polynomial in the erroneous position polynomial and the erroneous value polynomial;

[0104] 4. Calculate the error value using the Fourier algorithm.

[0105] However, the fast Euclidean algorithm directly uses the adjoint equation, a multidimensional data, for polynomial solving, which makes the computational dimension of the aforementioned FFT-based RS decoding scheme high, resulting in a more complex RS decoding process.

[0106] Therefore, how to reduce the decoding complexity of RS codes is a technical problem that urgently needs to be solved.

[0107] To this end, embodiments of this application provide a decoding method and related apparatus for simplifying the process of solving the error position polynomial and the error value polynomial through a divide-and-conquer strategy, thereby reducing the complexity of the solution process and improving the processing efficiency of error correction for RS codes.

[0108] Before introducing the decoding method in the embodiments of this application, some terms used in the embodiments of this application will be explained to facilitate understanding by those skilled in the art.

[0109] 1. Minimum interpolation problem.

[0110] For a given finite field GF(P) n Here, we'll use a value of 2 for P as an example for illustration. GF(P) n It can also be written as Where m is a non-negative integer. All polynomials mentioned below are polynomial rings. The elements in.

[0111] In a finite field In the equation, for any polynomials a(x) and b(x), the rank of the polynomial pair [a(x), b(x)] is defined as:

[0112] rank[a(x),b(x)]=max{2 degb(x),2 deg(a(x))+1}(1)

[0113] Where rank[] represents the rank of the polynomial pair, max{} represents taking the maximum value, and deg represents the degree of the polynomial.

[0114] In general, for any polynomial s(x) (where the coefficients of s(x) are... (elements in) and ρ Different elements There exist two complementary solutions [n(x), w(x)] and [m(x), v(x)] such that:

[0115]

[0116]

[0117] Furthermore, rank[n(x),w(x)] + rank[m(x),v(x)] = 2ρ + 1, where 2ρ + 1 is an odd number, so rank[n(x),w(x)] ≠ rank[m(x),v(x)]. Therefore, among two pairs of complementary solutions, there exists a solution with a smaller rank. In this embodiment, the problem of calculating the solution with the smallest rank is called the minimum difference problem.

[0118] 2. Fast Modular Approach

[0119] The fast modular method is used to solve the aforementioned minimum difference problem.

[0120] Let {v0,v1,...,v m-1}for A basis, then The elements in can be represented as:

[0121] ω i =i0v0+i1v1+...+i m-1 v m-1 i = 0, 1, ..., 2 m -1(4)

[0122] Among them, i j This represents the binary expansion of i, where j < m.

[0123] Given a positive integer ρ and any Considering the minimum difference problem, we can obtain:

[0124]

[0125] Let D i =s(w i-1 +β), G i =1, define homomorphism:

[0126] φ i (w(x),n(x))=D i w(x)+G i n(x), i=1,2,...,ρ;(6)

[0127] Then the intersection of the kernels of the homomorphisms is:

[0128] m=ker(φ1)∩ker(φ2)∩...∩ker(φ ρ (7)

[0129] That is, the intersection (7) is the solution space of the minimum difference problem (5). The solution of (5) can be obtained by calculating the minimum rank solution in the kernel intersection m in (7).

[0130] Among them, a divide-and-conquer strategy can be used to solve (6), in which a large-dimensional original problem is decomposed into multiple subproblems; then, for a subproblem with a sufficiently small dimension, a solution can be directly given; subsequently, the solutions of the subproblems are combined to obtain the solution of the original problem. The fast modular method provided in this application is based on this divide-and-conquer strategy.

[0131] Specifically, the computation process of the fast modular method includes the following steps.

[0132] Step 1. Obtain the input, including: algorithm dimension ρ, polynomial D. i and polynomial G i , positive integers r0 and r1, and r0+r1=2j+1, j is a non-negative integer, element β.

[0133] Step 2. If ρ = 1, proceed to step 3; otherwise, proceed to step 4.

[0134] Step 3. If D ρ =0 or G ρ =0, and r0>r1 satisfy the condition, then let:

[0135]

[0136] Otherwise, let:

[0137]

[0138] Then proceed to step 11.

[0139] Step 4. Let η = 2 ε Then the original problem can be decomposed into at least two parts: subproblem 1 and subproblem 2. Subproblem 1 includes {i = 1, 2, ..., η / 2}, and subproblem 2 includes {i = η / 2 + 1, η / 2 + 2, ..., ρ}.

[0140] Step 5. Substitute η / 2, polynomial D i and polynomial G i Let i = 1, 2, ..., η / 2, positive integers r0 and r1, and element β as input. Solve subproblem 1 to obtain the output, which is denoted as the first polynomial matrix and the integer r. 1,0 ,r 1,1 The first polynomial matrix can be represented as:

[0141]

[0142] Step 6. For the polynomial matrix Performing a Fourier transform on the elements in the matrix yields the frequency domain matrix:

[0143]

[0144] Step 7. Calculate subproblem 2 i = 1, 2, ..., η / 2, and obtain:

[0145]

[0146] Step 8, convert ρ-η / 2, polynomial D i ^ and polynomial G i ^, i = 1, 2, ..., ρ-η / 2, r 1,0 ,r 1,1 , element β+ω η / 2 As input, solve subproblem 2, obtain the output and denote it as the second polynomial matrix and integers r0^, r1^. The second polynomial matrix can be represented as:

[0147]

[0148] Step 9. For the polynomial matrix Performing a Fourier transform on the elements in the matrix yields the frequency domain matrix:

[0149]

[0150] Step 10. and Multiply the frequency domain matrices and then obtain the following by inverse Fourier transform:

[0151]

[0152] Step 11. Output ψ and r0^, r1^.

[0153] 3. Reed-Solomon (RS)

[0154] RS(2 m The k-code can be defined as:

[0155]

[0156] The original code is represented as:

[0157]

[0158] After the source codeword is transmitted, the data received by the decoding device can be represented by a vector as follows:

[0159]

[0160] Where, vector Given an error pattern, the decoding device's function is to calculate e, thereby recovering the original codeword c from the vector r.

[0161] Let the inverse Fourier transform of vector r be a polynomial.

[0162] Define the set of error locations as:

[0163] E={ω i |e i ≠0}

[0164] Define the error position polynomial as:

[0165]

[0166] For the position ω where no error occurred i r i =c i ,Right now For the position ω where there is an error i Since λ(x) = 0, we can obtain:

[0167]

[0168] In equation (10), dividing both sides by a polynomial of degree k and retaining the quotient, we get:

[0169]

[0170] When the received vector r is not subject to error interference, we can obtain At this point, s(x) = 0. Therefore, s(x) can be regarded as the parity polynomial, or the syndrome of the RS code.

[0171] In this embodiment of the application, the decoding device can receive the RS code as described above, and solve the minimum difference problem corresponding to the RS code based on the aforementioned fast modulo method, so as to achieve decoding.

[0172] The decoding method provided in the embodiments of this application will now be described with reference to the accompanying drawings.

[0173] Please see Figure 2 This is a schematic diagram of a decoding method provided in an embodiment of this application, which includes the following steps.

[0174] S101. Determine the syndrome of the first data.

[0175] In this embodiment, in step S101, the decoding device receives first data sent by other devices through a transceiver module (e.g., a wireless transceiver module) or acquires the first data through a data acquisition module (e.g., a camera). Subsequently, the decoding device calculates the Fourier transform of the codeword at a specific frequency point, and the resulting transform is used as the syndrome of the first data.

[0176] The first data is data encoded based on RS code, wherein the synod, the error position polynomial, and the error value polynomial satisfy a first correlation relationship, the dimension of which is ρ.

[0177] In one possible implementation, the first association includes a first equation, which is:

[0178]

[0179] Where z1(x) is the error value polynomial, s(x) is the adjoint polynomial, λ(x) is the error position polynomial, and ρ = 2 m -k and ω i-1 And β is a finite field (2 m In the set of elements (k), mod represents the modulo operation, and ∏ represents factorial.

[0180] Specifically, the encoding and decoding process of RS codes can be based on a finite field structure, where ρ = 2. m -k and ω i-1 And β is a finite field (2 m For the elements in (k), this implementation provides a specific way to realize the first association relationship through the first equation. Other implementation forms can be obtained by equivalent transformation of the first equation, which is not limited here.

[0181] In one possible implementation,

[0182] The value of rank[z1(x),λ(x)] = max{2 degλ(x),2 deg(z1(x))+1} is not odd, where rank[] represents the rank of the polynomial pair, max{} represents the maximum value, and deg represents the degree of the polynomial.

[0183] Based on the above technical solution, when the value of rank[z1(x),λ(x)]=max{2 degλ(x),2 deg(z1(x))+1} is odd, the first data can be determined to be undecodeable data.

[0184] In one possible implementation, the syndrome includes at least one non-zero element. Specifically, if all elements in the syndrome are zero, the decoding device can determine that the first data has not been erroneously interfered with. The implementation process can be referred to the description of the aforementioned formula (11). In this case, no error correction is required, and the decoding device will not need to decode.

[0185] In one possible implementation, the number of roots of the error-position polynomial is the same as the degree of the error-position polynomial. Specifically, if the number of roots of the error-position polynomial is different from the degree of the error-position polynomial, the interference received by the codeword is an uncorrectable error, and the decoder device identifies the first data as undecorable data and directly exits the decoding process.

[0186] S102. Determine ρ element pairs according to the aforementioned syndrome;

[0187] In this embodiment, in step S102, the decoding device determines ρ element pairs according to the syndrome determined in step S101.

[0188] For example, ρ element pairs can be obtained from the Fourier transform of the association, and the implementation process of the aforementioned formula (8) can be referred to.

[0189] S103. Decompose the ρ element pairs based on the divide-and-conquer strategy to obtain at least two partial element pairs;

[0190] In this embodiment, in step S103, the decoding device decomposes the ρ element pairs determined in step S102 using a divide-and-conquer strategy to obtain at least two partial element pairs.

[0191] In one possible implementation, the ρ element pairs obtained in step S102 can be represented as (D i G i ), where D i =s(w i-1 +β),G i =1, and i = 1, 2, ..., ρ; its implementation process can be referred to the description of the aforementioned formulas (5) and (6). At this time, at least two partial element pairs in step S103 include a first partial element pair and a second partial element pair, wherein the first partial element pair can be represented as (D i G i ), i = 1, 2, ..., η; the second part of the element pair can be represented as (D i G i ), i = η+1, η+2, ..., ρ.

[0192] Specifically, the encoding and decoding process of RS code can be based on the structure of finite fields. This implementation provides a specific implementation of ρ element pairs and the corresponding first part element pairs and second part element pairs. Other representations can be obtained through equivalent transformations, which are not limited here.

[0193] S104. Determine the error position polynomial and the error value polynomial based on the at least two partial element pairs and the first association relationship;

[0194] In this embodiment, in step S104, the decoding device determines the error position polynomial and the error value polynomial based on at least two partial element pairs and the first association relationship obtained in step S103.

[0195] In one possible implementation, the at least two partial element pairs include a first partial element pair and a second partial element pair. Specifically, in step S104, the decoding device determines the error location polynomial and the error value polynomial based on the at least two partial element pairs and the first correlation relationship. This process may include: the decoding device determining a first polynomial matrix based on the first partial element pair, wherein the first polynomial matrix has 2 rows and 2 columns, and the element pairs in each row of the first polynomial matrix satisfy the first correlation relationship; the decoding device then updates the second partial element pair based on the Fourier transform result of the first polynomial matrix, obtaining an updated second partial element pair, and determines a second polynomial matrix based on the updated second partial element pair and the rank of the first polynomial matrix, wherein the second polynomial matrix has 2 rows and 2 columns, and the element pairs in each row of the second polynomial matrix satisfy the first correlation relationship; subsequently, the decoding device determines the error location polynomial and the error value polynomial based on the first polynomial matrix and the second polynomial matrix.

[0196] Specifically, the at least two partial element pairs obtained by the divide-and-conquer strategy include at least a first partial element pair and a second partial element pair. In the process of determining the error position polynomial and the error value polynomial based on the at least two partial element pairs and the first correlation, the decoding device can perform iterative operations based on the at least two partial element pairs to determine the error position polynomial and the error value polynomial.

[0197] In one possible implementation, the process by which the decoding device determines the error location polynomial and the error value polynomial based on the first polynomial matrix and the second polynomial matrix may specifically include: the decoding device calculating the product of the Fourier transform result of the first polynomial matrix and the Fourier transform result of the second polynomial matrix according to the convolution theorem to obtain a first target matrix, and performing an inverse Fourier transform on the first target matrix to obtain a second target matrix; thereafter, the decoding device determines the error location polynomial and the error value polynomial based on the second target matrix.

[0198] The decoding device can extract the frequency domain features of the first polynomial matrix and the second polynomial matrix through Fourier transform, and perform convolution processing based on the two extracted frequency domain features, so that the first target matrix obtained by convolution processing can be used to represent the first polynomial matrix and the second polynomial matrix. The corresponding time domain features are obtained by inverse Fourier transform, which can reduce the complexity of the calculation process compared with the method without frequency domain transformation processing.

[0199] In one possible implementation, the process by which the decoding device determines the error position polynomial and the error value polynomial based on the second target matrix may specifically include: the decoding device determining the elements of the row with the smallest rank in the second target matrix as the error position polynomial and the error value polynomial.

[0200] Specifically, after obtaining the second target matrix, the decoding device can determine the two elements of the row with the smallest rank in the second target matrix as the error position polynomial and the error value polynomial, respectively.

[0201] In one possible implementation, the rank of the first polynomial matrix is ​​a positive integer r. 0,0 and r 0,1 , and r 0,0 +r 0,0 =2η+1; correspondingly, the rank of the second polynomial matrix is ​​the positive integers r0^ and r1^, and r0^+r1^=2ρ+1.

[0202] Specifically, the encoding and decoding process of RS codes can be based on the structure of finite fields. This implementation provides a specific implementation of the first polynomial matrix and the second polynomial matrix. Other representations can be obtained through equivalent transformations, which are not limited here.

[0203] In one possible implementation, the at least two partial element pairs include the target element pair, and the second equation obtained by substituting the target element pair into the first equation has a dimension of 1, wherein the solution to the second equation is:

[0204]

[0205] or,

[0206]

[0207] Optionally, the target element pair may be contained within the first part of the element pair, or the target element pair may be contained within the second part of the element pair.

[0208] Specifically, among the at least two pairs of partial elements obtained by the divide-and-conquer strategy, at least one target element pair is included such that substituting it into the first equation yields a second equation with a computational dimension of 1. This implementation provides a specific form of the solution to the second equation, where other representations can be obtained through equivalent transformations, which are not limited here.

[0209] S105. Correct the first data according to the error position polynomial and the error value polynomial to obtain the corrected data.

[0210] In this embodiment, in step S105, the decoding device corrects the first data obtained in step S101 according to the error position polynomial and error value polynomial determined in step S104, and obtains the corrected data.

[0211] For example, in step S105, the decoding device can perform error correction on the first data obtained in step S101 based on the error location polynomial and the error value polynomial, according to Chien search, fast fourier transform (FFT) search, or combined with the aforementioned formula (11), or other implementation methods, to obtain the corrected data.

[0212] In this embodiment, after determining the syndrome of the first data, the element pairs corresponding to the syndrome are decomposed using a divide-and-conquer strategy to obtain at least two partial element pairs. Then, based on these at least two partial element pairs, the error position polynomial and error value polynomial corresponding to the syndrome are determined to correct the first data and obtain the corrected data. The divide-and-conquer strategy simplifies the process of solving the error position polynomial and error value polynomial, thus improving the processing efficiency of RS code error correction.

[0213] In this embodiment, after determining the syndrome of the first data, the decoding device decomposes the corresponding ρ element pairs of the syndrome using a divide-and-conquer strategy to obtain at least two partial element pairs. Then, based on these at least two partial element pairs, it determines the error position polynomial and error value polynomial corresponding to the syndrome, thereby correcting the first data to obtain the corrected data. The divide-and-conquer strategy simplifies the process of solving the error position polynomial and error value polynomial, reducing the complexity of the solution process and improving the processing efficiency of RS code error correction.

[0214] The embodiments of this application have been described above from the perspective of methodology. The decoding apparatus in the embodiments of this application will be introduced below from the perspective of specific device implementation.

[0215] Please see Figure 3This application provides a schematic diagram of a decoding device 300, which may include a first determining unit 301, a second determining unit 302, a decomposition unit 303, a third determining unit 304, and an error correction unit 305.

[0216] In one implementation of the decoding device 300

[0217] The first determining unit 301 is used to determine the syndrome of the first data, which is data encoded based on Reed-Solomon RS code, wherein the syndrome, the error position polynomial and the error value polynomial satisfy a first correlation relationship, and the dimension of the first correlation relationship is ρ.

[0218] The second determining unit 302 is used to determine ρ element pairs according to the syndrome;

[0219] Decomposition unit 303 is used to decompose the ρ element pairs based on a divide-and-conquer strategy to obtain at least two partial element pairs;

[0220] The third determining unit 304 is used to determine the error position polynomial and the error value polynomial based on the at least two partial element pairs and the first association relationship;

[0221] The error correction unit 305 is used to correct the first data according to the error position polynomial and the error value polynomial to obtain the corrected data.

[0222] In one possible implementation, the at least two partial element pairs include a first partial element pair and a second partial element pair, and the third determining unit 304 is specifically used for:

[0223] The first polynomial matrix is ​​determined based on the first part of the element pairs, wherein the number of rows and columns of the first polynomial matrix are both 2, and the element pairs of each row of the first polynomial matrix satisfy the first association relationship;

[0224] Based on the Fourier transform result of the first polynomial matrix, update the second part of the element pair to obtain the updated second part of the element pair;

[0225] The second polynomial matrix is ​​determined based on the updated second part of the element pairs and the rank of the first polynomial matrix, wherein the number of rows and columns of the second polynomial matrix are both 2, and the elements of each row of the second polynomial matrix satisfy the first association relationship.

[0226] The error position polynomial and the error value polynomial are determined based on the first polynomial matrix and the second polynomial matrix.

[0227] In one possible implementation, the third determining unit 304 is specifically used for:

[0228] The first target matrix is ​​obtained by multiplying the Fourier transform result of the first polynomial matrix and the Fourier transform result of the second polynomial matrix according to the convolution theorem.

[0229] The second target matrix is ​​obtained by performing an inverse Fourier transform on the first target matrix;

[0230] The error location polynomial and the error value polynomial are determined based on the second objective matrix.

[0231] In one possible implementation, the third determining unit 304 is specifically used for:

[0232] The elements of the row with the smallest rank in the second target matrix are determined as the error position polynomial and the error value polynomial.

[0233] In one possible implementation, the first association includes a first equation, which is:

[0234]

[0235] Where z1(x) is the error value polynomial, s(x) is the adjoint polynomial, λ(x) is the error position polynomial, and ρ = 2 m -k and ω i-1 And β is a finite field (2 m In the set of elements (k), mod represents the modulo operation, and ∏ represents factorial.

[0236] In one possible implementation, the ρ element pairs are (D i G i ), where D i =s(w i-1 +β),G i =1, and i=1,2,...,ρ;

[0237] The at least two partial element pairs include a first partial element pair and a second partial element pair, wherein the first partial element pair includes (D i G i ), i = 1, 2, ..., η; the second part of the element pairs includes (D i G i ), i = η+1, η+2, ..., ρ.

[0238] In one possible implementation,

[0239] The rank of the first polynomial matrix is ​​a positive integer r. 0,0 and r 0,1 , and r 0,0 +r 0,0=2η+1; correspondingly, the rank of the second polynomial matrix is ​​the positive integers r0^ and r1^, and r0^+r1^=2ρ+1.

[0240] In one possible implementation, the at least two partial element pairs include the target element pair, and the second equation obtained by substituting the target element pair into the first equation has a dimension of 1, wherein the solution to the second equation is:

[0241]

[0242] or,

[0243]

[0244] In one possible implementation,

[0245] The value of rank[z1(x),λ(x)] = max{2 degλ(x),2 deg(z1(x))+1} is not odd, where rank[] represents the rank of the polynomial pair, max{} represents the maximum value, and deg represents the degree of the polynomial.

[0246] In one possible implementation, the syntactic includes at least one non-zero element.

[0247] In one possible implementation, the number of roots of the erroneous position polynomial is the same as the degree of the erroneous position polynomial.

[0248] It should be noted that the information execution process of the unit of the above-mentioned decoding device 300 can be specifically described in the method embodiment shown above in this application, and will not be repeated here.

[0249] The decoding apparatus provided in this application embodiment will now be described from the perspective of a physical device. This decoding apparatus can be applied to a terminal device in a communication system, and is used by the terminal device to decode received RS-encoded data, as follows: Figure 4 The terminal device 400 shown; or, the decoding device can be applied to network equipment in a communication system, for the network equipment to decode the received RS-encoded data, as follows: Figure 5 The network device 500 shown below will be followed by a detailed introduction of the terminal device 400 and the network device 500.

[0250] Please see Figure 4The diagram illustrates a possible logical structure of the terminal device 400, which may include, but is not limited to, at least one processor 401 and a communication port 402. Further optionally, the device may also include at least one of a memory 403 and a bus 404. In embodiments of this application, the at least one processor 401 is used to control the operation of the terminal device 400.

[0251] Furthermore, processor 401 can be a central processing unit, a general-purpose processor, a digital signal processor, an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It can implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. The processor can also be a combination that implements computational functions, such as a combination of one or more microprocessors, a combination of a digital signal processor and a microprocessor, etc. Those skilled in the art will readily understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0252] It should be noted that, Figure 4 The terminal device 400 shown can be used to implement the steps of the decoding device in the aforementioned method embodiments, and to achieve the corresponding technical effects of the decoding device. Figure 4 The specific implementation methods of the terminal devices shown can all be referred to the descriptions in the foregoing method embodiments, and will not be repeated here.

[0253] Please see Figure 5 The network device 500 includes at least one processor 511 and at least one network interface 514. Optionally, the network device 500 further includes at least one memory 512, at least one transceiver 513, and one or more antennas 515. The processor 511, memory 512, transceiver 513, and network interface 514 are connected, for example, via a bus. In this embodiment, the connection may include various interfaces, transmission lines, or buses, etc., and this embodiment is not limited thereto. The antenna 515 is connected to the transceiver 513. The network interface 514 enables the network device to communicate with other communication devices through a communication link. For example, the network interface 514 may include a network interface between the network device and a core network device, such as an S1 interface; the network interface may also include a network interface between the network device and other network devices (e.g., other network devices or core network devices), such as an X2 or Xn interface.

[0254] The processor 511 is primarily used to process communication protocols and communication data, control the entire network device, execute software programs, and process the data of the software programs, for example, to support the network device in performing the actions described in the embodiments. The network device may include a baseband processor and a central processing unit. The baseband processor is primarily used to process communication protocols and communication data, while the central processing unit is primarily used to control the entire terminal device, execute software programs, and process the data of the software programs. Figure 5 The processor 511 can integrate the functions of a baseband processor and a central processing unit. Those skilled in the art will understand that the baseband processor and the central processing unit can also be independent processors interconnected via technologies such as buses. Those skilled in the art will understand that a terminal device can include multiple baseband processors to adapt to different network standards, and a terminal device can include multiple central processing units to enhance its processing capabilities. The various components of the terminal device can be connected via various buses. The baseband processor can also be described as a baseband processing circuit or a baseband processing chip. The central processing unit can also be described as a central processing circuit or a central processing chip. The function of processing communication protocols and communication data can be built into the processor or stored in memory as a software program, with the processor executing the software program to implement the baseband processing function.

[0255] The memory is primarily used to store software programs and data. The memory 512 can exist independently or be connected to the processor 511. Optionally, the memory 512 can be integrated with the processor 511, for example, integrated into a single chip. The memory 512 can store program code that executes the technical solutions of the embodiments of this application, and its execution is controlled by the processor 511. The various types of computer program code being executed can also be considered as drivers for the processor 511.

[0256] Figure 5 Only one memory and one processor are shown. In actual terminal devices, there may be multiple processors and multiple memories. Memory can also be called storage medium or storage device, etc. Memory can be a storage element on the same chip as the processor, i.e., an on-chip storage element, or it can be a separate storage element; this application does not limit this.

[0257] Transceiver 513 can be used to support the reception or transmission of radio frequency (RF) signals between network devices and terminals. Transceiver 513 can be connected to antenna 515. Transceiver 513 includes a transmitter Tx and a receiver Rx. Specifically, one or more antennas 515 can receive RF signals. The receiver Rx of transceiver 513 is used to receive the RF signals from the antennas, convert the RF signals into digital baseband signals or digital intermediate frequency (IF) signals, and provide the digital baseband signals or IF signals to the processor 511 so that the processor 511 can perform further processing on the digital baseband signals or IF signals, such as demodulation and decoding. In addition, the transmitter Tx in transceiver 513 is also used to receive modulated digital baseband signals or IF signals from processor 511, convert the modulated digital baseband signals or IF signals into RF signals, and transmit the RF signals through one or more antennas 515. Specifically, the receiver Rx can selectively perform one or more stages of downmixing and analog-to-digital conversion on the radio frequency signal to obtain a digital baseband signal or a digital intermediate frequency (IF) signal. The order of the downmixing and IF conversion processes is adjustable. The transmitter Tx can selectively perform one or more stages of upmixing and digital-to-analog conversion on the modulated digital baseband signal or digital IF signal to obtain a radio frequency signal. The order of the upmixing and IF conversion processes is also adjustable. The digital baseband signal and the digital IF signal can be collectively referred to as digital signals.

[0258] The transceiver 513 can also be called a transceiver unit, transceiver, transceiver device, etc. Optionally, the device in the transceiver unit that performs the receiving function can be regarded as the receiving unit, and the device in the transceiver unit that performs the transmitting function can be regarded as the transmitting unit. That is, the transceiver unit includes a receiving unit and a transmitting unit. The receiving unit can also be called a receiver, input port, receiving circuit, etc., and the transmitting unit can be called a transmitter, transmitter, or transmitting circuit, etc.

[0259] It should be noted that, Figure 5 The network device 500 shown can be used to implement the steps of the decoding device in the aforementioned method embodiments, and to achieve the corresponding technical effects of the decoding device. Figure 5 The specific implementation of the network device 500 shown can be referred to the description in the foregoing method embodiments, and will not be repeated here.

[0260] This application also provides a computer-readable storage medium that stores one or more computer-executable instructions. When the computer-executable instructions are executed by a processor, the processor executes the method described in the possible implementation of the terminal device in the foregoing embodiments, i.e., the decoding device in the foregoing method embodiments.

[0261] This application also provides a computer program product (or computer program) that stores one or more computers. When the computer program product is executed by the processor, the processor executes the method of the decoding device described above, i.e., the decoding device in the aforementioned method embodiment.

[0262] This application also provides a chip system including at least one processor for supporting a first decoding device in implementing the functions involved in the possible implementations of the decoding device described above. Optionally, the chip system further includes an interface circuit that provides program instructions and / or data to the at least one processor. In one possible design, the chip system may further include a memory for storing necessary program instructions and data for the decoding device. The chip system may be composed of chips or may include chips and other discrete devices.

[0263] This application also provides a communication system, the network system architecture of which includes the decoding device in any of the above embodiments.

[0264] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection between apparatuses or units through some interfaces, and may be electrical, mechanical, or other forms.

[0265] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0266] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

Claims

1. A decoding method, characterized in that, include: Determine the syndrome of the first data, which is data encoded using Reed-Solomon RS codes. The syndrome, error location polynomial, and error value polynomial satisfy a first correlation relationship, the dimension of which is... ; Determined according to the said syndrome 1 pair of elements, the The element pairs are ,in, , ,and , For the said companion, the and stated For a finite field The elements in the array, where m is a non-negative integer; Based on the divide-and-conquer strategy, the above Each element pair is decomposed to obtain at least two partial element pairs; The error location polynomial and the error value polynomial are determined based on the at least two partial element pairs and the first association relationship; The first data is corrected based on the error position polynomial and the error value polynomial to obtain the corrected data.

2. The method according to claim 1, characterized in that, The at least two partial element pairs include a first partial element pair and a second partial element pair, and determining the error position polynomial and the error value polynomial based on the at least two partial element pairs and the first association relationship includes: A first polynomial matrix is ​​determined based on the first set of element pairs, wherein the number of rows and columns of the first polynomial matrix are both 2, and the element pairs of each row of the first polynomial matrix satisfy the first association relationship. Based on the Fourier transform result of the first polynomial matrix, update the second part of the element pairs to obtain the updated second part of the element pairs; The second polynomial matrix is ​​determined based on the updated second part of the element pairs and the rank of the first polynomial matrix, wherein the second polynomial matrix has 2 rows and 2 columns, and the elements of each row of the second polynomial matrix satisfy the first association relationship. The error position polynomial and the error value polynomial are determined based on the first polynomial matrix and the second polynomial matrix.

3. The method according to claim 2, characterized in that, Determining the error location polynomial and the error value polynomial based on the first polynomial matrix and the second polynomial matrix includes: The first target matrix is ​​obtained by multiplying the Fourier transform results of the first polynomial matrix and the Fourier transform results of the second polynomial matrix according to the convolution theorem. The second target matrix is ​​obtained by performing an inverse Fourier transform on the first target matrix; The error location polynomial and the error value polynomial are determined based on the second target matrix.

4. The method according to claim 3, characterized in that, The step of determining the error location polynomial and the error value polynomial based on the second target matrix includes: The elements of the row with the smallest rank in the second target matrix are determined as the error position polynomial and the error value polynomial.

5. The method according to any one of claims 2 to 4, characterized in that, The first association relationship includes a first equation, which is: Among them, the For the error value polynomial, the For the said companion, the For the polynomial at the error position, the And the and stated For a finite field The elements in, the This represents the modulo operation, the... To represent factorial, It is a finite field The elements in.

6. The method according to claim 5, characterized in that, The at least two partial element pairs include a first partial element pair and a second partial element pair, wherein the first partial element pair includes , The second part of the element pairs includes , .

7. The method according to claim 5, characterized in that, The at least two partial element pairs include the target element pair, and the second equation obtained by substituting the target element pair into the first equation has a dimension of 1, wherein the solution to the second equation is: or, 8. The method according to claim 5, characterized in that, The value of is not odd, where, the Denotes the rank of a pair of polynomials, the This indicates taking the maximum value. Indicates the degree of the polynomial.

9. The method according to any one of claims 1 to 4, characterized in that, The companion expression includes at least one non-zero element.

10. The method according to any one of claims 1 to 4, characterized in that, The number of roots of the erroneous position polynomial is the same as the order of the erroneous position polynomial.

11. A decoding device, characterized in that, include: The first determining unit is used to determine the syndrome of the first data, which is data encoded based on Reed-Solomon RS codes. The syndrome, the error location polynomial, and the error value polynomial satisfy a first correlation relationship, the dimension of which is... ; The second determining unit is used to determine based on the said syndrome. 1 pair of elements, the The element pairs are ,in, , ,and , For the said companion, the and stated For a finite field The elements in the array, where m is a non-negative integer; Decomposition unit, used to decompose the above based on a divide-and-conquer strategy. Each element pair is decomposed to obtain at least two partial element pairs; The third determining unit is configured to determine the error position polynomial and the error value polynomial based on the at least two partial element pairs and the first association relationship; The error correction unit is used to correct the first data according to the error location polynomial and the error value polynomial to obtain the corrected data.

12. The apparatus according to claim 11, characterized in that, The at least two partial element pairs include a first partial element pair and a second partial element pair, and the third determining unit is specifically used for: A first polynomial matrix is ​​determined based on the first set of element pairs, wherein the number of rows and columns of the first polynomial matrix are both 2, and the element pairs of each row of the first polynomial matrix satisfy the first association relationship. Based on the Fourier transform result of the first polynomial matrix, update the second part of the element pairs to obtain the updated second part of the element pairs; The second polynomial matrix is ​​determined based on the updated second part of the element pairs and the rank of the first polynomial matrix, wherein the second polynomial matrix has 2 rows and 2 columns, and the elements of each row of the second polynomial matrix satisfy the first association relationship. The error position polynomial and the error value polynomial are determined based on the first polynomial matrix and the second polynomial matrix.

13. The apparatus according to claim 12, characterized in that, The third determining unit is specifically used for: The first target matrix is ​​obtained by multiplying the Fourier transform results of the first polynomial matrix and the Fourier transform results of the second polynomial matrix according to the convolution theorem. The second target matrix is ​​obtained by performing an inverse Fourier transform on the first target matrix; The error location polynomial and the error value polynomial are determined based on the second target matrix.

14. The apparatus according to claim 13, characterized in that, The third determining unit is specifically used for: The elements of the row with the smallest rank in the second target matrix are determined as the error position polynomial and the error value polynomial.

15. The apparatus according to any one of claims 12 to 14, characterized in that, The first association relationship includes a first equation, which is: Among them, the For the error value polynomial, the For the said companion, the For the polynomial at the error position, the And the and stated For a finite field The elements in, the This represents the modulo operation, the... To represent factorial, It is a finite field The elements in.

16. The apparatus according to claim 15, characterized in that, The at least two partial element pairs include a first partial element pair and a second partial element pair, wherein the first partial element pair includes , The second part of the element pairs includes , .

17. The apparatus according to claim 15, characterized in that, The at least two partial element pairs include the target element pair, and the second equation obtained by substituting the target element pair into the first equation has a dimension of 1, wherein the solution to the second equation is: or, 18. The apparatus according to claim 15, characterized in that, The value of is not odd, where, the Denotes the rank of a pair of polynomials, the This indicates taking the maximum value. Indicates the degree of the polynomial.

19. The apparatus according to any one of claims 11 to 14, characterized in that, The companion expression includes at least one non-zero element.

20. The apparatus according to any one of claims 11 to 14, characterized in that, The number of roots of the erroneous position polynomial is the same as the order of the erroneous position polynomial.

21. A computer storage medium, characterized in that, The computer storage medium stores instructions that, when executed on the computer, cause the computer to perform the method as described in any one of claims 1 to 10.

22. A computer program product, characterized in that, The computer program product stores instructions that, when executed on a computer, cause the computer to perform the method as described in any one of claims 1 to 10.

23. A decoding device, characterized in that, Includes at least one processor coupled to memory. The memory is used to store programs or instructions; The at least one processor is used to execute the program or instructions to cause the apparatus to implement the method as described in any one of claims 1 to 10.

Citation Information

Patent Citations

  • Decoding method and decoder

    CN104052502A