A two-stage decoding method for algebraic codes
Through a two-stage decoding method, combined with hard decision and error pattern generation, the complexity and decoding delay of algebraic code decoding are reduced, the performance and complexity problems of traditional algebraic code decoding are solved, and efficient low-complexity decoding effects are achieved.
Patent Information
- Application Number
- CN202411473748.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-22
- Publication Date
- 2025-09-12
- Estimated Expiration
- 2044-10-22
AI Technical Summary
Traditional algebraic code decoding methods fail to fully utilize the received soft information in hard decision decoding, resulting in poor decoding performance and high complexity of soft decision decoding, making it unsuitable for practical applications.
A two-stage decoding method is adopted. The first stage performs hard decision and error pattern generation, and the second stage performs algebraic code decoding according to the judgment needs. By introducing a discrimination mechanism to reduce unnecessary soft decoding calls, the hard decision and soft decision algorithms are combined to reduce the complexity and decoding delay.
It achieves low-complexity and high-performance decoding, approaches the performance limit of finite code length, reduces decoding power consumption and delay, and is suitable for communication systems with high reliability requirements.
Smart Images

Figure CN119582857B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of digital communications, and in particular relates to a two-stage decoding method for algebraic codes. Background Art
[0002] Algebraic codes are a class of error-correcting codes designed using algebraic structures. They protect and recover data by applying algebraic methods (such as polynomial operations) during the encoding and decoding processes. Common algebraic codes include Bose-Chaudhuri-Hocquenghem (BCH) codes and Reed-Solomon (RS) codes. Since their introduction in the 1960s, algebraic codes have been widely used in satellite communications, fiber-optic communications, wireless communications, and data storage, becoming a key technology for ensuring reliable transmission in modern information and communication systems.
[0003] Algebraic code decoding generally involves two methods: hard-decision decoding and soft-decision decoding. Typical hard-decision decoding algorithms include the Berlekamp-Massey (BM) algorithm and the Guruwami-Sudan (GS) algorithm, which perform decoding based on hard-decision sequences. Typical soft-decision decoding algorithms include the Generalized Minimum Distance (GMD) algorithm and the Koetter-Vardy (KV) algorithm, which utilize soft information in the received sequence to improve decoding performance.
[0004] Despite the elegant mathematical structure and excellent codebook performance of algebraic codes, their decoding process still suffers from the following shortcomings. On the one hand, while traditional hard-decision decoding offers low complexity, it fails to fully utilize received soft information, resulting in a significant performance gap compared to maximum likelihood (ML) decoding and insufficient support for current high-reliability requirements. On the other hand, while soft-decision algebraic code decoding can achieve better decoding performance, its high decoding complexity makes it unsuitable for practical use. Summary of the Invention
[0005] The main purpose of the present invention is to overcome the shortcomings and deficiencies of the prior art and provide a two-stage decoding method for algebraic codes. The method can achieve performance close to the finite code length limit when the list is small, realize low-complexity and high-performance decoding, and the specially introduced judgment mechanism for whether to perform algebraic code decoding can significantly reduce the number of times the algebraic code decoder is called in the second stage. In parallel implementation, the decoding power consumption can be significantly reduced, and in serial implementation, the decoding delay can be significantly reduced.
[0006] In order to achieve the above object, the present invention adopts the following technical solutions:
[0007] The present invention provides a two-stage decoding method for algebraic codes, comprising the following steps:
[0008] (1) Perform hard decision based on the received sequence y to obtain a hard decision sequence in represents an n-length binary vector space, where n is the length of the binary description of the selected replacement digit;
[0009] (2) Generate one or more test error pattern sequences based on the received sequence y, denoted as (e (0) ,e (1) ,…,e (L-1) ),in 0≤l≤L-1, where L represents the number of error patterns in the list;
[0010] (3) For 0≤l≤L-1, each error pattern sequence e (l) XOR with the hard decision sequence z to obtain the second stage decoding input sequence Where 0≤l≤L-1;
[0011] (4) For each sequence r (l) Determine whether algebraic code decoding needs to be performed, and obtain the sequence that needs to be performed algebraic code decoding, recorded as in And L a ≤L, where L a Represents the number of sequences that need to perform algebraic code decoding;
[0012] (5) For all sequences Perform algebraic code decoding to obtain the estimated sequence of all successfully decoded codewords, denoted as in And L b ≤L a , where L b represents the estimated number of codewords successfully decoded from the algebraic code;
[0013] (6) Estimation sequence for all codewords Select the optimal decoding result corresponding to As the final output of decoding.
[0014] As a preferred technical solution, in step (2), the method of generating one or more test error pattern sequences includes online generation, offline generation, and a hybrid generation combining the two; the online generation is based on the error pattern soft weight or the corresponding likelihood value measurement; the offline generation includes but is not limited to a method based on Hamming weight and bit reliability sorting.
[0015] As a preferred technical solution, the online generation includes but is not limited to using a list Viterbi algorithm or a flip pattern tree algorithm on a Trellis graph based on partial constraints.
[0016] As a preferred technical solution, in step (2), after generating one or more test error pattern sequences, the following steps are also included but not limited to:
[0017] The error patterns are processed serially one by one, in parallel or in combination.
[0018] As a preferred technical solution, in step (4), for each sequence r (l) Whether algebraic code decoding needs to be performed is determined, where the determination is based on, but not limited to, whether the syndrome satisfies or does not satisfy a threshold number.
[0019] As a preferred technical solution, in step (5), the algebraic code decoding adopted includes but is not limited to the Berlekamp-Massey algorithm and the Guruwami-Sudan algorithm.
[0020] As a preferred technical solution, in step (6), the metrics used to select the optimal decoding include but are not limited to hard weight, soft weight and likelihood value.
[0021] Compared with the prior art, the present invention has the following advantages and beneficial effects:
[0022] 1. The present invention provides a two-stage algebraic code list decoding method. The first stage generates an error pattern, and the second stage can use low-complexity hard-decision algebraic code decoding. Its overall complexity can be significantly lower than traditional soft-decision algebraic code decoding.
[0023] 2. The present invention is based on error pattern inversion and traditional algebraic code hard decision decoding method, which can achieve better decoding performance. Especially for high-rate algebraic codes, the present invention can achieve performance close to the finite code length limit.
[0024] 3. The present invention proposes a mechanism for determining whether to execute the second-stage algebraic code decoding, which can effectively skip unnecessary algebraic code decoding based on statistical metrics, significantly reducing decoding complexity and decoding delay. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0026] Figure 11 is a schematic diagram of a two-stage decoding method for algebraic codes according to an embodiment of the present invention;
[0027] Figure 2 Schematic diagram of the performance of the FPT-BM algorithm and the Chase-BM algorithm in Example 2 of the present invention;
[0028] Figure 3 This is a simulation performance diagram of the LC-LVA-BM algorithm and the Chase-BM algorithm in Example 2 of the present invention;
[0029] Figure 4 1 is a simulation performance diagram of three decoding algorithms when a mechanism for determining whether to execute the second-stage algebraic code decoding is introduced in Example 3 of the present invention;
[0030] Figure 5 This is a comparison diagram of average decoding delays of three decoding algorithms when a mechanism for determining whether to execute the second-stage algebraic code decoding is introduced in Example 3 of the present invention;
[0031] Figure 6 This is a comparison chart of the average number of BM decoding calls by three decoding algorithms when a mechanism for determining whether to execute the second-stage algebraic code decoding is introduced in Example 3 of the present invention. DETAILED DESCRIPTION
[0032] In order to enable those skilled in the art to better understand the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.
[0033] References to "embodiments" in this application mean that a particular feature, structure, or characteristic described in connection with the embodiment may be included in at least one embodiment of the application. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor does it constitute an independent or alternative embodiment that is mutually exclusive of other embodiments. It is understood, both explicitly and implicitly, by those skilled in the art that the embodiments described in this application may be combined with other embodiments.
[0034] Example 1
[0035] This embodiment 1 provides a two-stage decoding algorithm for algebraic codes, including the following steps:
[0036] (1) Perform hard decision based on the received sequence y to obtain a hard decision sequence in represents an n-length binary vector space, where n is the length of the binary description of the selected replacement digit;
[0037] (2) Generate one or more test error pattern sequences based on the received sequence y, denoted as (e (0) ,e (1) ,…,e (L-1) ),in 0≤l≤L-1; where L represents the number of error patterns in the list;
[0038] Furthermore, in step (2), the method used to generate one or more error patterns is arbitrary, including but not limited to online generation, offline generation, and a combination of the two; wherein online generation can be based on metrics such as the soft weight of the error pattern or the corresponding likelihood value, and the specific algorithm implementation includes but is not limited to using the list Viterbi algorithm (LVA) or the flipping pattern tree (FPT) algorithm on a Trellis graph based on partial constraints; offline generation methods include but are not limited to Hamming weight and ordered reliability bits (ORB), etc.
[0039] Furthermore, the generation and subsequent processing mechanism of the multiple error patterns is arbitrary, including but not limited to serial processing of the error patterns one by one, parallel processing, and corresponding mixed processing.
[0040] (3) For 0≤l≤L-1, each error pattern sequence e (l) XOR with the hard decision sequence z to obtain the second stage decoding input sequence Where 0≤l≤L-1;
[0041] (4) For each sequence r (l) Determine whether algebraic code decoding needs to be performed, and obtain the sequence that needs to be performed algebraic code decoding, recorded as in And L a ≤L; where L a Represents the number of sequences that need to perform algebraic code decoding;
[0042] Furthermore, in step (4), the method used for each r (l) The sequence determines whether algebraic code decoding needs to be performed, and the judgment basis includes but is not limited to the number threshold value satisfied or not satisfied by the syndrome.
[0043] (5) For all sequences that need to be decoded Perform algebraic code decoding to obtain the estimated sequence of all successfully decoded codewords, denoted as in And L b ≤L a ; where L b represents the estimated number of codewords successfully decoded from the algebraic code;
[0044] Furthermore, in step (5), the algebraic decoding algorithm used is arbitrary, including but not limited to the Berlekamp-Massey (BM) algorithm and the Guruwami-Sudan (GS) algorithm.
[0045] (6) For all Select the optimal decoding result corresponding to As the final output of decoding.
[0046] Furthermore, in step (6), the metric used to select the optimal decoding is arbitrary, including but not limited to hard weight, soft weight, and likelihood value.
[0047] The two-stage decoding method of the present invention achieves performance levels approaching the theoretical limit of finite code lengths when processing shorter lists through hard-decision decoding, achieving a low-complexity and highly efficient decoding process. Specifically, the present invention introduces a decision-skipping mechanism that effectively reduces the number of soft decoder calls in the second stage. This not only significantly reduces decoding energy consumption in a parallel architecture, but also significantly reduces decoding latency in a serial architecture.
[0048] Example 2
[0049] This embodiment 2 provides an example of a two-stage algebraic code decoding algorithm. Consider the BCH [256, 239] code, whose codewords are modulated by binary phase-shift keying (BPSK) and transmitted through an additive white Gaussian noise (AWGN) channel. The receiving end uses two-stage decoding with list sizes of 32, 128, and 512, respectively. The first stage uses the FPT algorithm and the list Viterbi algorithm (LVA) based on local constraints (LC) to generate error patterns, and the second stage uses BM decoding. In this embodiment 2, the above two types of decoding algorithms are respectively denoted as FPT-BM and LC-LVA-BM. In this example, for simplicity, this embodiment 2 does not introduce a judgment mechanism for whether to perform the second stage BM decoding. This embodiment 2 uses the Chase-BM algorithm as a comparison benchmark. Here, the Chase-BM algorithm uses the Chase flip mode in the first stage. For each flip mode, BM decoding is used in the second stage. Figure 2The frame error rate (FER) comparison between the FPT-BM algorithm and the Chase-BM algorithm is shown. Figure 2 It can be seen from the figure that the FPT-BM algorithm proposed in the present invention can achieve decoding performance similar to or even better than the Chase-BM algorithm. Figure 3 The FER comparison between the LC-LVA-BM algorithm and the Chase-BM algorithm is shown. Figure 3 It can be seen from the figure that the LC-LVA-BM algorithm proposed in the present invention can achieve decoding performance similar to or even better than the Chase-BM algorithm.
[0050] Example 3
[0051] This embodiment 3 provides an example of a two-stage algebraic code decoding algorithm. Consider the use of BCH [256, 239] code, whose codewords are transmitted through an AWGN channel after BPSK modulation. The receiving end adopts a two-stage decoding with a list size of 512. The first stage uses the FPT algorithm and the partially constrained LVA to generate error patterns, and the second stage uses BM decoding. The above two types of decoding algorithms are also recorded as FPT-BM and LC-LVA-BM respectively. In this example, this embodiment 3 considers using the number of unsatisfied syndromes as the criterion for determining whether the second stage decoding is executed. This embodiment 3 uses the Chase-BM algorithm as a comparison benchmark. Here, the Chase-BM algorithm adopts the Chase flip mode in the first stage. For each flip mode, BM decoding is adopted in the second stage. Figure 4 The FER comparison of FPT-BM, LC-LVA-BM and Chase-BM algorithms is shown. Figure 4 As can be seen from the figure, the Chase-BM algorithm loses performance when the second-stage decoding decision mechanism is introduced. However, the algorithm proposed in this invention has similar performance with or without the second-stage decoding decision mechanism, with almost no performance loss, and achieves performance that exceeds the random coding joint bound. Figure 5 Shows the decoding delay comparison, from Figure 5 As can be seen from the figure, the introduction of the second-stage decoding discrimination mechanism can significantly reduce the latency of the three types of decoders; and the LC-LVA-BM two-stage decoding can achieve lower decoding latency in medium and high signal-to-noise ratio areas compared to FPT-BM and Chase-BM; Figure 6 Shows the number of times the three types of decoders call BM decoding, from Figure 6 As can be seen from the figure, the LC-LVA-BM algorithm can effectively skip unnecessary BM decoding and has the lowest number of BM decoding calls compared to the other two decoders. It only requires about 10 BM decoding calls at medium and high signal-to-noise ratios.
[0052] It should be noted that, for the sake of convenience, the aforementioned method embodiments are all expressed as a series of action combinations, but those skilled in the art should know that the present invention is not limited to the described order of actions, because according to the present invention, certain steps can be performed in other orders or simultaneously.
[0053] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The program can be stored in a non-volatile computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
[0054] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0055] The above embodiments are preferred implementation modes of the present invention, but the implementation modes of the present invention are not limited to the above embodiments. Any other changes, modifications, substitutions, combinations, and simplifications that do not deviate from the spirit and principles of the present invention should be considered as equivalent replacement methods and are included in the scope of protection of the present invention.
Claims
1. A two-stage decoding method for algebraic codes, characterized in that The steps include: (1) Perform hard decision based on the received sequence y to obtain a hard decision sequence in represents an n-length binary vector space, where n is the length of the binary description of the selected replacement digit; (2) Generate one or more test error pattern sequences based on the received sequence y, denoted as (e (0) ,e (1) ,…,e (L-1) ),in 0≤l≤L-1, where L represents the number of error patterns in the list; (3) For 0≤l≤L-1, each error pattern sequence e ( l) XOR with the hard decision sequence z to obtain the second stage decoding input sequence Where 0≤l≤L-1; (4) For each sequence r ( 1) Determine whether algebraic code decoding needs to be performed, and obtain the sequence that needs to be performed algebraic code decoding, which is recorded as in And L a ≤L, where L a Represents the number of sequences that need to perform algebraic code decoding; (5) For all sequences Perform algebraic code decoding to obtain the estimated sequence of all successfully decoded codewords, denoted as in And L b ≤L a , where L b represents the estimated number of codewords successfully decoded from the algebraic code; (6) Estimation sequence for all codewords Select the optimal decoding result corresponding to As the final output of decoding.
2. A two-stage decoding method for algebraic codes according to claim 1, characterized in that: In step (2), the method of generating one or more test error pattern sequences includes online generation, offline generation and a hybrid generation combining the two; the online generation is based on the error pattern soft weight or the corresponding likelihood value measurement; the offline generation includes a method based on Hamming weight and bit reliability sorting.
3. A two-stage decoding method for algebraic codes according to claim 2, characterized in that: The online generation includes utilizing a list Viterbi algorithm or utilizing a flipping pattern tree algorithm on a partially constrained Trellis graph.
4. A two-stage decoding method for algebraic codes according to claim 1, characterized in that: In step (2), after generating one or more test error pattern sequences, the following steps are also included: The error patterns are processed serially one by one, in parallel or in combination.
5. A two-stage decoding method for algebraic codes according to claim 1, characterized in that: In step (4), for each sequence r (l) It is determined whether algebraic code decoding needs to be performed, where the determination is based on whether the syndrome satisfies or does not satisfy a threshold number.
6. A two-stage decoding method for algebraic codes according to claim 1, characterized in that: In step (5), the algebraic code decoding methods used include the Berlekamp-Massey algorithm and the Guruwami-Sudan algorithm.
7. A two-stage decoding method for algebraic codes according to claim 1, characterized in that: In step (6), the metrics used to select the optimal decoding include hard weight, soft weight and likelihood value.
Citation Information
Patent Citations
Field programmable gate array (FPGA) design method of truncated high-speed transmit power control (TPC) decoder
CN102932002A
Decoding method and device
CN115665795A