1. Introduction
Product codes (PCs) and other product-like constructions are widely used in high-speed communication systems due to their attractive trade-off between implementation cost and error-correction performance [
1,
2]. For systems such as optical transport networks (OTNs), where high throughput and low decoding latency are critical [
3], hard-decision decoders remain particularly attractive since they significantly reduce data flow and enable simpler hardware implementations compared with soft-decision decoding schemes [
4,
5,
6].
Extensive research efforts have been devoted to the construction of advanced product-like codes. To improve the performance of classical PCs, staircase codes (SCs) were proposed, in which neighboring blocks are spatially coupled to enhance decoding performance [
7]. Hu et al. designed a high-throughput SC encoder achieving an approximate throughput of 119.5 Gbps, demonstrating the feasibility of SCs for real-world OTNs [
8]. In [
9], an experimental demonstration of the performance advantages of the multi-chain coupled staircase code in a 240-Gbps optical coherent transmission system was presented. In [
10], a novel framework termed zipper code was introduced to describe several product-like codes. Within this framework, several high-performance constructions, including multi-chain coupled, Reed–Solomon (RS)-based zipper codes and high-order staircase codes, were proposed [
11,
12,
13,
14,
15]. These constructions offer increased design flexibility in terms of coupling dimensions, component codes, and decoding schedules, while maintaining compatibility with hard-decision decoding. In addition to product-like code constructions over BCH and RS component codes, recent progress in algebraic coding theory has also explored code constructions and decoding algorithms over richer algebraic structures, such as Gaussian integer rings, Eisenstein integers, quaternion/Hurwitz integers, and octonion integers [
16,
17,
18]. These studies broaden the algebraic foundations of coding theory and may provide useful insights for future code design and decoding algorithms.
However, the low-complexity decoders for product codes remain a critical performance bottleneck. In existing product-like code constructions, Bose–Chaudhuri–Hocquenghem (BCH) or RS codes are commonly employed as component codes [
19]. Their low-complexity decoders typically rely on iterative bounded-distance decoding (iBDD), which, however, suffers from inherently limited performance gains [
20]. In particular, when the number of errors within a received sequence exceeds the error-correcting capability, a bounded-distance decoder (BDD) may produce miscorrections [
21], which can severely degrade the overall decoding performance and even lead to error propagation across iterations. As a result, the error-correction performances of iBDD-based decoders are often significantly inferior to those of the soft-decision decoders, particularly in the moderate-to-high signal-to-noise ratio (SNR) region. To address these limitations while preserving the low complexity of hard-decision decoding, extensive research focuses on the design of soft-aided hard-decision decoders (SA-HDDs).
A variety of SA-HDDs have been proposed in the literature by exploiting soft reliabilities. Log-likelihood ratios (LLRs) were incorporated into the decoding process of iBDD, leading to iBDD with scaled reliability (iBDD-SR) that significantly improves the decoding performance [
22]. The parameters of iBDD-SR were optimized in [
23]. Building upon iBDD-SR, Liga et al. introduced reliability-aware bit marking into BDD, achieving approximately 0.8 dB performance gain over conventional iBDD [
24]. Further advancement was made by Liva et al. through the use of generalized minimum-distance decoding, which substantially reduced the performance gap between traditional iBDD and the Chase–Pyndiah decoder [
1], albeit at the cost of increased decoding complexity [
25]. Lei et al. proposed an SA-HDD by classifying bits based on their LLRs and selectively flipping those with smaller reliabilities to suppress miscorrections [
26]. More recently, refined reliability metrics have been developed in [
27]. Other low-complexity SA-HDDs can be found in [
28,
29]. To further improve decoding performance, iterative bounded-distance decoding with random flipping (iBDD-RF) [
30] was proposed, resulting in a remarkable performance gain.
However, a significant performance gap remains between existing HDDs and the Chase–Pyndiah decoder [
1] under comparable complexity constraints. In this paper, we propose a reduced-complexity iterative bounded-distance decoder with random flipping (RC-iBDD-RF), a soft-aided binary message-passing decoding scheme with refined bit reliability to enable low-cost random flipping. Specifically, RC-iBDD-RF augments the conventional weighted combination of the BDD output and channel LLR with a memory term that retains useful information from previous iterations. Specifically, unlike the existing iBDD-RF [
30] that relies mainly on the current BDD output and channel LLR, RC-iBDD-RF augments its conventional weighted combination with a memory term to retain useful information from previous iterations. This enhanced reliability reduces erroneous flips and improves the overall error-correction capability.
The main contributions of this paper are summarized as follows. First, we develop an enhanced reliability metric that incorporates past decoding states into the soft reliability of each bit, enabling more informed bit-flipping decisions. Second, we incorporate the error-and-erasure decoder (EaED) with fixed filling patterns as a post-processing module to reduce the residual errors. Third, we provide a detailed analysis of the memory and computational complexities of the proposed decoder. Finally, simulation results demonstrate that RC-iBDD-RF reduces the decoding complexity while achieving performance gains.
3. The Proposed Reduced-Complexity Iterative Bounded Distance Decoder with Random Flipping
In this paper, we propose the following binary message passing decoder, which is a modification of iBDD-RF [
30]. For ease of presentation, the number of iterations is indexed according to the number of half-iterations, i.e., the row decoding and column decoding at the
l-th iteration are represented as the
-th half-iteration and the
-th half-iteration.
3.1. Enhanced Soft Reliability
We use the notations of iBDD-RF [
30] in this paper to present the proposed reduced-complexity iBDD-RF (RC-iBDD-RF). For completeness, we present the block diagram of RC-iBDD-RF in
Figure 2. Let
denote the output sequence of the
i-th row at the
l-th half-iteration. For the
l-th half-iteration, the input of BDD of the
i-th row is
, and the decoding output of BDD is
. In RC-iBDD-RF, the decoding reliability
of the BDD for the
j-th position of the
i-th row at the
l-th half-iteration is given as
In iBDD-RF, the soft reliability
is computed as
, where
is the scaling factor, and
is the channel LLR. It can be observed that, in iBDD-RF, the soft reliability
does not account for either the number of bits corrected by BDD or the outcomes of the most recent decoding half-iteration. First, the probability of miscorrection in BDD increases with the number of corrected bits. Second, once a decoding success is declared in the most recent decoding half-iteration, the corresponding decision should not be easily reversed. These observations motivate the following enhanced soft reliability metric.
Let
denote the status of the
i-th BDD decoder at the
-th half-iteration. We have
where
t is the error correcting capability of the component code, and
denotes the number of bits corrected by BDD. Accordingly, we define the
historical reliability of the
bit at the
-th half-iteration as
when
l is even, and as
when
l is odd. Here,
is a given scaling factor,
is the output of last half-iteration. The soft reliability
in RC-iBDD-RF is given as
Given the soft reliability
, we attempt to flip bits randomly. Let
T be a given threshold. If
,
is flipped with a probability of
. The output result after flipping is denoted as
. That is, we have
Finally, is taken as the input to the hard-decision operator . The output of the RC-iBDD-RF at the l-th half-iteration is . For completeness, Algorithm 1 presents the procedure of a half-iteration of RC-iBDD-RF.
| Algorithm 1: The Decoding Procedure of a Half-Iteration of RC-iBDD-RF |
![Entropy 28 00824 i001 Entropy 28 00824 i001]() |
Remark: Unlike conventional SA-iBDD and reliability-combining methods that mainly rely on channel reliability or current decoding output , the proposed metric further incorporates the past decoding information of each bit. Hence, bits with similar channel reliabilities can be assigned different flipping priorities according to their decoding histories. This memory-aided design allows RC-iBDD-RF to focus random flipping on persistently unreliable bits.
3.2. Post-Processing by EaED
However, similar to iBDD-RF, the decoding output of RC-iBDD-RF is not guaranteed to be a codeword, which may lead to a high error floor. To further improve the performance of RC-iBDD-RF, we propose to replace the last two half-iterations of BDD with EaED, where the enhanced reliability is used as the erasure criterion. First, to effectively control the decoding complexity, we apply erasure for EaED only once, i.e., at the penultimate half-iteration of RC-iBDD-RF. Second, in the proposed decoder, the two filling patterns and in EaED are fixed as the all-zero vector and the all-one vector .
The details of the last two half-iterations with EaED are given as follows:
Bits whose absolute reliabilities are smaller than a predefined threshold are erased.
If an erased bit is successfully recovered during the penultimate half-iteration, then in the subsequent half-iteration, this bit is no longer in the erased state.
If an erased bit is not recovered during the penultimate half-iteration, it remains in the erased state in the subsequent half-iteration.
In [
32], the two filling patterns are randomly generated for each execution of EaED, which incurs a higher complexity than the proposed scheme. We chose these two fixed filling patterns since erasing is executed only once in the proposed decoder.
In the following, we analyze the error-correcting capability of the ideal EaED (iEaED) with fixed filling patterns
and
using a genie-aided method. Since miscorrection is not allowed in iEaED, its decoding rule can be expressed as
where
denotes the transmitted codeword. Although such an ideal decoder is not implementable in practice, anchor decoders enable the decoding performance to approach that of an ideal miscorrection-free decoder. Moreover, the miscorrection-free assumption enables a quantitative mathematical analysis of the probability that EaED successfully decodes a component code.
Following [
32], let
denote the probability that iEaED successfully decodes when
E bits are erased and
D bits are erroneous. Let
t denote the error-correcting capability of the component code and
e denote the number of positions in
that differ from the transmitted codeword
. Following [
32], the decoding success probability of iEaED with fixed filling patterns is given by
It can be seen that when
, EaED always decodes successfully. If all erroneous bits are erased, the EaED can correct up to
errors, which is significantly higher than the error-correction capability
t of BDD.
The above analysis shows the potential advantages of EaED in error correction. Hence, we propose to incorporate EaED into RC-iBDD-RF to obtain additional performance gain. Specifically, EaED is employed in the last two half-iterations of RC-iBDD-RF as a post-processing procedure.
4. The Analysis of Complexity
In [
30], a detailed complexity comparison showed the advantage of iBDD-RF in terms of computational complexity when compared with existing SA-HDDs. Therefore, in the following, we mainly focus on comparing the complexity of RC-iBDD-RF with that of iBDD-RF. We consider memory storage and computational complexity in this paper and briefly discuss the practical implementation implications at the end of this section.
4.1. Memory Storage Analysis
For RC-iBDD-RF, it is required to store , , the probability of flipping , decoding status , and the channel LLR. We consider a BCH component code with q-bit quantization. Let denote the number of iterations for the proposed RC-iBDD-RF. The number of decoding iterations is set as , following the common practice for HDD-based product-code decoders. This setting is also verified by our preliminary convergence tests, which show that further iterations provide only negligible performance improvement while increasing decoding complexity.
For a PC, a complete iteration consists of a row half-iteration and a column half-iteration. Therefore, the memory required to store , , and is .
The maximum possible number of statuses is . Since the error correction capability t of the BCH component code is typically smaller than four, three bits are enough for storing the status of a row or a column. As a result, the total memory requirement of the statuses is .
For the channel LLR, its memory requirement is .
Thus, the additional memory requirement of RC-iBDD-RF, when compared with iBDD, is
It was shown in [
30] that the additional memory requirement of iBDD-RF, when compared with iBDD, is
.
For , , , the memory requirement of RC-iBDD-RF is calculated as bits, while that of iBDD-RF is bits, where q is the quantization bit width of the channel LLR. Therefore, the extra memory of RC-iBDD-RF over iBDD-RF is only bits.
For , , , the corresponding memory requirements are bits and bits, respectively, and the extra memory is bits.
In practical implementations, the quantization bit width q is typically no more than 10 bits. These results show that the additional memory requirement of RC-iBDD-RF is limited.
4.2. Computational Complexity Analysis
In this subsection, we analyze the computational complexity of RC-iBDD-RF. Similar to iBDD-RF, the main computational complexity of RC-iBDD-RF arises from the execution of the Berlekamp–Massey (BM) algorithm in BDD and the generation of random numbers.
The computational complexity of a single execution of the BM algorithm is
. Let
denote the average execution number of the BM algorithm per codeword in a single decoding iteration, which is defined as
where
is the total execution number of BDD during decoding. Since each iteration involves decoding all codewords in both row and column directions, the overall computational complexity of the BM algorithm in RC-iBDD-RF can be written as
. It can be observed that this expression is consistent with that of iBDD-RF. Hence, to compare the computational complexities of RC-iBDD-RF and iBDD-RF, we only need to compare their
.
Figure 3a,b, we present the values of
for the RC-iBDD-RF. We select the BCH codes
and
as the component codes. The average execution numbers of the BM algorithm of iBDD-RF are also given in
Figure 3a,b. Based on these two figures, we can make the following observations:
We then consider the complexity of random number generation in RC-iBDD-RF. Since the filling patterns
and
are chosen as the all-zero and all-one sequences, random number generation in RC-iBDD-RF is only required for bit flipping. We use
to denote the average number of random numbers required for each codeword in a single iteration. Thus, the computational complexity associated with random number generation in RC-iBDD-RF is
. In
Figure 4, we present the values of
for RC-iBDD-RF and iBDD-RF, where the code
is selected as the component code. It can be seen that the two decoders admit comparable average numbers for random number generation. Hence, the complexities of generating random numbers in RC-iBDD-RF and iBDD-RF are comparable.
4.3. Complexity Comparison
In this subsection, we provide a detailed comparison of the additional memory requirements relative to iBDD and the computational complexities of RC-iBDD-RF, iBDD-RF, and iBDD. For clarity,
Table 1 summarizes their additional memory overheads and the corresponding computational complexities, where
denotes the number of iterations for iBDD.
In the following, we illustrate the complexity advantage of RC-iBDD-RF through a practical example. The code
is selected as the component code. We consider the SNR
dB. The number of decoding iterations is set as
. Similar to [
30], BDD is performed at the last two iterations of iBDD-RF.
From
Figure 3a and
Figure 4, we have
and
. Substituting these values into the expression in
Table 1, the computational complexity of RC-iBDD-RF can be estimated as
.
From
Figure 3a and
Figure 4, we have
and
. Substituting these values into the expression in
Table 1, the computational complexity of iBDD-RF can be estimated as
.
From
Figure 3a, we have
. Substituting this value into the expressions in
Table 1, the computational complexity of iBDD can be estimated as
.
It can be seen from this example that the proposed algorithm achieves a reduction in computational complexity when compared with iBDD-RF. Compared with iBDD, the complexity of RC-iBDD-RF increases by about 29.63%. From an implementation perspective, RC-iBDD-RF still preserves the standard row-column BDD decoding structure of iBDD-based decoders. Therefore, the main BDD modules can be reused. Meanwhile, the extra memory access is mainly related to the quantized channel LLRs and the stored decoding states, which can be scheduled together with the row and column decoding process. Moreover, since the EaED module uses fixed filling patterns and is applied only once as post-processing, it does not introduce additional global decoding iterations. Hence, RC-iBDD-RF maintains an implementation-friendly structure for high-speed communication systems.
5. Performance Comparison
Extensive simulation results are presented to demonstrate the performance advantages of RC-iBDD-RF.
5.1. Parameter Optimization
The scaling factors and the flipping probability
in RC-iBDD-RF are all related to the number of iterations, which makes the parameter optimization of RC-iBDD-RF complex. However, no suitable theoretical method is currently available for parameter optimization. Therefore, following the dynamic reliability score decoder (DRSD) [
32] and iBDD-RF [
30], we employ the hyperparameter optimization tool
optuna [
33] to optimize the parameters of RC-iBDD-RF.
The parameters of RC-iBDD-RF include , and . We set the objective function as the required at a target bit error rate (BER) of . Specifically, the parameter set suggested by Optuna is used as the input, and the corresponding achieving the target BER is obtained as the output. This value is then fed back to Optuna, which iteratively samples and searches for the optimal hyperparameter combination based on previous results.
In this paper, we set the maximum number of decoding iterations to
. The search ranges of the optimized parameters are
,
,
,
, and
. The optimization is performed with a maximum budget of 100 trials and terminates when the predefined trial budget is exhausted, after which the final optimized parameter set is obtained. As an example, for the product code based on
, the optimized parameter set obtained by
Optuna is given as follows:
with
5.2. The Influence of EaED
In this subsection, we investigate the impact of EaED on the performance of RC-iBDD-RF, as well as on the execution number of BDD. We select the BCH code as the component code and employ the hyperparameter optimization tool optuna to obtain all parameters of RC-iBDD-RF. The number of iterations is set to 12.
In
Figure 5, we present the performance of RC-iBDD-RF with and without EaED. It can be seen that at
, RC-iBDD-RF with EaED achieves an approximately 0.03 dB gain over RC-iBDD-RF without EaED. To further investigate its impact on complexity, we present simulation-based comparisons of the average execution numbers of BDD for the RC-iBDD-RF with and without EaED in the following. In
Figure 6, we present
for RC-iBDD-RF without EaED and RC-iBDD-RF with EaED. The BCH code
is selected as the component code. From
Figure 6, we observe that RC-iBDD-RF without EaED and RC-iBDD-RF with EaED admit almost the same average execution numbers of BDD. This is due to the fact that, in RC-iBDD-RF, bit erasures are applied only once and are controlled by the threshold
. These results indicate that RC-iBDD-RF with EaED has almost the same decoding complexity as the RC-iBDD-RF without EaED, while achieving superior performance.
We point out that the EaED post-processing contributes only a small additional gain, about 0.03 dB at BER in the considered simulation. Therefore, EaED should be regarded as an optional residual-error cleanup module rather than the main source of the coding gain. Since the fixed filling patterns are applied only once after the iterative decoding process, this module does not introduce extra global decoding iterations or random pattern search. Thus, it may be enabled in low-BER-oriented applications where a small deterministic post-processing cost is acceptable, while it can be disabled in systems with more stringent latency or complexity constraints.
5.3. Performance Comparison for RC-iBDD-RF
In this subsection, we present the performance of RC-iBDD-RF over the AWGN channel and compare it with several existing SA-HDDs, including iBDD-RF, iBDD-SR, the threshold-based binary messaging-passing decoder (TB-BMPD), and DRSD.
We select the representative high-rate BCH codes
and
[
31,
34,
35] as component codes and set the number of iterations to 12. For TB-BMPD, in addition to ten algorithm iterations, two extra BDD iterations are required. For DRSD, only 10 iterations are performed, and the component codes are chosen as
and
. We point out that, since the code rates of
and
are very close, the difference can be neglected. The performances of various SA-HDDs are shown in
Figure 7a,b. Based on these two figures, we have the following observations.
For the PC based on , RC-iBDD-RF outperforms the iBDD-SR, iBDD-RF, and TB-BMPD. Specifically, its performance is approximately 0.29 dB better when compared with iBDD-SR, 0.13 dB better when compared with iBDD-RF, and 0.1 dB better when compared with TB-BMPD.
For the PC based on
, RC-iBDD-RF achieves about 0.1 dB performance gain over iBDD-RF, while it is only 0.15 dB away from DRSD. Note that it was shown in [
30] that the decoding complexity of DRSD is higher than that of iBDD-RF. This indicates that the decoding complexity of RC-iBDD-RF is much lower than that of DRSD.
Within the simulated BER range in
Figure 7, no obvious error floor is observed for RC-iBDD-RF. The low-BER gain suggests that the proposed reliability metric and the EaED-based post-processing can reduce part of the residual errors after iterative BDD. However, as with other iBDD-based decoders, rare decoding failures may still occur at very low BER due to stall patterns or miscorrection-induced residual patterns. The fixed filling patterns in EaED provide deterministic low-complexity post-processing and avoid random pattern search, but they may not cover all possible rare events in the deep error-floor region. A complete error-floor characterization would require further importance-sampling simulations or analytical stall-pattern analysis, which is an interesting topic for future research.
5.4. Complexity-Performance Trade-Off Analysis
To further provide a clearer and fairer comparison among different decoders, we introduce a complexity-storage-weighted SNR metric inspired by the latency-weighted decoding metric in [
36]. In [
36], the decoding performance is evaluated by jointly considering the error-rate performance and the normalized decoding delay. Since this work focuses on algorithm-level decoding complexity and memory storage rather than hardware-measured latency, we replace the normalized decoding delay with two normalized cost factors: normalized computational complexity and normalized storage complexity.
For decoder
d, the normalized computational complexity is defined as
where
denotes the computational complexity of decoder
d, and
denotes the computational complexity of iBDD-RF. Similarly, the normalized storage complexity is defined as
where
denotes the memory requirement of decoder
d.
The normalized required SNR at a target
is defined as
where
denotes the required
for decoder
d to achieve the target
.
The complexity-storage-weighted SNR is defined as
A smaller
indicates a better trade-off between decoding performance, computational complexity, and memory storage.
For the product code based on
, the memory requirements of RC-iBDD-RF and iBDD-RF are
bits and
bits, respectively. Without loss of generality, we set
. The computational complexity of RC-iBDD-RF and iBDD-RF are
and
, respectively. At the target BER
, the required
of RC-iBDD-RF and iBDD-RF are 4.06 dB and 4.20 dB, respectively, according to
Figure 7a.
Accordingly, the complexity-storage-weighted SNR is calculated as
Since the metric is normalized to iBDD-RF, the corresponding value of iBDD-RF is 1. RC-iBDD-RF achieves a value smaller than 1, which indicates a better trade-off between decoding performance, computational complexity, and memory storage.