1. Relevance

In modern wireless telecommunication systems of 4G and 5G generation the noiseless codes are used to increase the data transmission validity: Hamming codes, Bose–Chaudhuri–Hocquenghem codes, Reed-Muller codes, concatenated codes, convolutional codes, polar codes, low-density parity-check codes (LDPC), turbo codes (TC), etc. At the same time, there are more powerful codes (TC, LDPC codes) in data channels, and less powerful codes (Hamming, Bose–Chaudhuri–Hocquenghem codes, Reed–Muller codes, polar codes) in control channels. LDPC, TC, and polar codes are the most efficient of them. In terms of energy parameters, turbo codes and LDPC codes approach the Shannon boundary quite close [1].

In modern 4G and 5G generation wireless data communication systems, the technologies of adaptive regulation of modulation, power and coding parameters are used to improve energy characteristics [2]–[4]. The adaptive coding circuits are considered in this article. In 4G, 5G mobile communication systems for coding adaptation, only one parameter is used: the redundancy of TC encoder or LDPC code. It is regulated by changing the coding rate R in the range from 1/5 to 2/3. In this case, the use of TC is more expedient at low coding rates, and LDPC codes—at higher ones.

In the 4G LTE standard, for high-speed data transmission, TC are used in combination with FM-4, QAM-16, QAM-64 modulations, and for low-speed ones, the convolution and block codes are used. The TC encoder consists of two recursive systematic convolutional codes (RSCC) with the constraint length K = 4 and the coding rate R = 1/2. The total coding rate of TC is equal to R = 1/3.

Each RSCC is presented in the following form:

$$ G\left( D \right)=\left[ 1,\ \frac{{{g}_{1}}\left( D \right)}{{{g}_{0}}\left( D \right)} \right] , $$

where \( {{g}_{1}}\left( D \right)=1+D+{{D}^{3}} \) is the RSCC feed-forward polynomial, \( {{g}_{0}}\left( D \right)=1+{{D}^{2}}+{{D}^{3}} \) is the RSCC feedback polynomial.

In the LTE system, the overall TC coding rate changes adaptively by using the HARQ scheme. The coding rate equals to the following values: R = 1/2, 2/3, 3/4. The Log-Map decoder with 8 decoding iterations is applied for the TC decoding. The length of information packet is of 6144 bits.

We have to provide the possibility to change other parameters: the state diagrams size of TC decoder, the RSCC polynomials, the number of component TC encoders, and the decoding algorithms to improve the efficiency of mobile systems.

2. Research and Publication Analysis

Briefly consider publications describing methods to improve coding. The method [5] is based on the simultaneous use of two interleaving algorithms: the first algorithm determines the data frame to shift by a certain number of positions, and the second algorithm performs data bit swapping depending on the value of parameter S.

This technique is effective for short and medium length of S-random interleaver information blocks. The fixed value of data bit spacing parameter S, the limitation on interleaver length and the computational complexity of interleaving algorithm are the disadvantages of this method. This method cannot be effectively used for the LTE wireless data transmission systems, where the information block has the length of 6144 bits.

The two-step S-random interleaver is used in the method [6]. The increasing of minimum TC code distance and the decreasing of correlation properties of coded sequences at the decoder output are the main purposes of this method. The fixed value of data bit spacing parameter S, the calculated complexity of interleaving algorithm, and the redundancy in information storage, namely, two interleaving tables, which are used to deinterleave the input sequence, are the disadvantages of this method.

The use of S-random interleaver for parametric adaptation is considered in [7]. It is the most efficient one among other types of interleavers (regular, pseudo-random).

The two-level scheme of parametric adaptation of the turbo code parameters is proposed in [8]: the coding rate and the number of decoding iterations of turbo code change depending on the state of information channel.

Another method is based on adaptive RSCC changes to improve their adjusting properties using the neural networks [9].

The method [10] is based on the parameters adjusting of the S-random interleaver in the case of deviation of the calculated values of normalized number of changes in the ratios signs of the posterior-a priori log-likelihood function (LLF) for the transmitted data bits of the turbo code decoder from the nominal ones. We see from the simulation results that the rational parameters of S-separation of the data bit interleaving for S-random interleaver are obtained depending on the noise values in channel and the normalized number of sign changes of the posterior-a priori LLF ratio for interactive TC decoder.

The results of efficiency improvement of mobile communication systems using neural networks in conjunction with turbo codes are presented in [11].

LDPC codes and one-level parametric adaptation are used in [12], with the coding rate as the parameter. The coding rate is selected by comparing the current bit error with the table values.

HARQ (Hybrid ARQ) retransmission systems with repeated request are used in [13], where the coding rate adaptation with power consumption optimization takes place.

3. Problem Statement

The development of optimization method for the turbo code encoder and decoder operation by using adaptive selection of the state diagrams size with the proposed parameter of decoding uncertainty value in wireless data communication systems is the aim of this article.

4. Basic Data

The block diagram of the proposed modified TC encoder is shown in Fig. 1. Further, the two-component TC is considered for simplicity.

Fig. 1.
figure 1

Block diagram of modified TC encoder.

The TC encoder consists of the cascade construction of parallel-connected RSCC separated by the interleaver I. Before the TC encoder, the code information about the adaptive change of information block size arrives at the block former from the decision block of the iterative TC decoder. The corresponding decision is sent to each component TC decoder to change the state diagrams size of the corresponding RSCC, while the calculation rules in the main TC decoding algorithms are changed.

At the time moment t, the user bit \( u_t \) , \( t\in {1,...,N} \) of the block with size N arrives at the RSCC input. The RSCC of turbo code generates systematic \( c_{t}^{\text{S}} \) and check bits \( c_{t}^{\text{C}} \) , \( t\in {1,...,N} \) , \( c_{t}^{\text{S}},c_{t}^{\text{C}}\in \left( 0,\,1 \right) \) , depending on the input bit value. The systematic \( c_{t}^{\text{S}} \) and check bits \( c_{t}^{\text{C}} \) are converted into systematic \( x_{t}^{\text{S}} \) and check \( x_{t}^{\text{C}} \) symbols \( t\in {1,...,N} \) , \( x_{t}^{\text{S}},x_{t}^{\text{C}}\in \left( -1,1 \right) \) to carry out the FM-2 phase modulation of signal.

The turbo code word is formed by the parallel connection of two RSCC separated by the interleaver. As a result of turbo coding, each systematic bit \( c_{t}^{\text{S}} \) corresponds to two check bits \( c_{t}^{\text{C1}} \) , \( c_{t}^{\text{C2}} \) , which are converted into symbols \( x_{t}^{\text{S}} \) , \( x_{t}^{\text{C1}} \) , \( x_{t}^{\text{C2}}\in \left( -1,1 \right) \) .

The efficiency of turbo codes depends on the principles of code combinations formation and the MAP (Maximum A posteriori Probabilities) decoding algorithms developed for them, such as Max-Log-Map, Log-Map, SOVA, based on the maximum of a posteriori probability [14].

The iterative decoder consists of component decoders connected in series. One iteration includes two serially connected component decoders, two interleavers and deinterleavers. The deinterleaver performs the inverse of interleaving operation. There are \( d=2I \) component decoders in the TC decoder, where I is the total number of decoding iterations, \( d\in {2,...,D} \) , D is the total number of component decoders.

There is the sequence at the TC encoder output:

$$ \overline{X}=({{\overline{X}}^{\text{S}}},\ {{\overline{X}}^{\text{C}}}) , $$

where \( {{\overline{X}}^{\text{S}}}=\overline{U} \) is the data output, \( {{\overline{X}}^{\text{C}}}=({{\overline{X}}^{\text{C1}}},{{\overline{X}}^{\text{C2}}}) \) is the check output with the dimension v, v is the total number of check symbols for each RSCC.

We assume that the communication channel is a discrete-continuous one with the ideal impulse response \( {{h}_{c}}\left( t \right)=1 \) . As a result, a signal is distorted only by the white Gaussian noise. From the channel output, the symbols sequence is supplied to the TC decoder of each decoding iteration: \( {{\overline{Y}}^{1}}=({{L}_{c}}{{\overline{Y}}^{\text{S1}}},\ {{L}_{c}}{{\overline{Y}}^{\text{C1}}}) \) for the decoder RSCC-1, where \( {{\overline{Y}}^{\text{C1}}}=({{\overline{Y}}^{\text{C11}}},\ldots \) , \( {{\overline{Y}}^{\text{C1}v}}) \) , and \( {{\overline{Y}}^{2}}=({{L}_{c}}{{\overline{Y}}^{\text{S}2}},\ {{L}_{c}}{{\overline{Y}}^{\text{C}2}}) \) for the decoder RSCC-2, where \( {{\overline{Y}}^{\text{C}2}}=({{\overline{Y}}^{\text{C}2\text{1}}},\ldots \) , \( {{\overline{Y}}^{\text{C}2v}}) \) . In this case \( {{\overline{Y}}^{\text{S1}}}={{\overline{Y}}^{\text{S}}},\ {{\overline{Y}}^{\text{S2}}} \) are the sequences of systematic symbols, accounting the corresponding interleaving operation, and \( L_c \) is the parameter of “channel reliability” characterizing the “noise” of information channel [15].

The decoding of turbo codes follows the same trellis diagram as the encoding. For example, the trellis diagrams for the RSCC (1, 5/7) and (1, 13/11) are shown in Figs. 2 and 3, respectively.

Fig. 2.
figure 2

Trellis state diagram for component code (1, 5/7).

Fig. 3.
figure 3

Trellis state diagram for component code (1, 13/11).

The number of RSCC state diagrams adaptively changes with adaptively changing the block size \( \tilde{N} \) , while their number is equal to the number of bits in the block of \( \tilde{N} \) size.

The forward \( \tilde{\alpha }_{t-1}^{{}}(s') \) and the backward \( \tilde{\beta }_{t}(s) \) values, the parameter \( \gamma _{t}({s}', s) \) , \( t\in {1,...,\tilde{N}} \) , and the LLF ratio \( L\left( {{u}_{k}} \right) \) for the transmitted bit are calculated to decode every bit.

For example, the MAP turbo code decoding algorithm with adaptive change of block size \( \tilde{N} \) for the component code (1, 5/7) is presented in Fig. 4.

Fig. 4.
figure 4

MAP turbo code decoding algorithm with adaptive change of block size N~ for RSCC (1, 5/7).

The LLF ratio \( L\left( {{u}_{t}} \right) \) for transmitted bit \( u_t \) is calculated as follows [15]:

$$ \begin{aligned} L\left( {{u}_{t}} \right)&=\log \left[ \frac{\sum\limits_{u+}{P({{s}_{t-1}}=s',y_{1}^{t-1})P({{u}_{t}}=1,{{y}_{t}},y_{t+1}^{N}/{{s}_{t-1}}=s',y_{1}^{t-1})}/P\left( y_{1}^{N} \right)}{\sum\limits_{u-}{P({{s}_{t-1}}=s',y_{1}^{t-1})P({{u}_{t}}=0,{{y}_{t}},y_{t+1}^{N}/{{s}_{t-1}}=s',y_{1}^{t-1})}/P\left( y_{1}^{N} \right)} \right]\\ &=\log \left[ \frac{\sum\limits_{u+}{P({{s}_{t-1}}=s',y_{1}^{t-1})P({{u}_{t}}=1,{{y}_{t}},y_{t+1}^{N}/{{s}_{t-1}}=s')}/P\left( y_{1}^{N} \right)}{\sum\limits_{u-}{P({{s}_{t-1}}=s',y_{1}^{t-1})P({{u}_{t}}=0,{{y}_{t}},y_{t+1}^{N}/{{s}_{t-1}}=s')}/P\left( y_{1}^{N} \right)} \right], \end{aligned} $$
(1)

where \( s' \) is the state for the time moment ( \( t-1 \) ), s is the state for the time moment t, \( y_{1}^{N}=\left\{ y_{1}^{t-1},{{y}_{t}},y_{t+1}^{N} \right\} \) is one frame of the received symbol, which can be divided into three parts.

The first part contains the observations before the time moment t, the second part contains the current observation, and the third part contains the observations after the time moment t.

We take into account the following expressions

$$ \begin{aligned} P({{u}_{t}}&=u,{{y}_{t}},y_{t+1}^{N}/{{s}_{t-1}}=s')\\&=P\left( y_{t+1}^{N}/{{s}_{t-1}} =s',{{u}_{t}}=u,{{y}_{t}} \right)P\left( {{u}_{t}}=u,{{y}_{t}}/{{s}_{t-1}}=s' \right) \\ & =P\left( y_{t+1}^{N}/{{s}_{t}}=s \right)P\left( {{u}_{t}}=u,{{y}_{t}}/{{s}_{t-1}}=s' \right), \end{aligned} $$
(2)
$$ {{\alpha }_{t}}(s)=P({{s}_{t}}=s,y_{1}^{t}) , $$
(3)
$$ {{\beta }_{t-1}}(s')=P(y_{t}^{N}/{{s}_{t-1}}=s') , $$
(4)
$$ {{\gamma }_{t}}(s',s)=P({{u}_{t}}=u,y_{t}^{{}}/{{s}_{t-1}}=s') , $$
(5)

where \( {{\alpha }_{t}}( s ) \) is the general probability in the state s for the time moment t, \( {{\beta }_{t-1}}( {s'} ) \) is the conditional probability in the state \( s' \) for the time moment (t – 1), \( {{\gamma }_{t}}( {s'},s ) \) is the conditional probability of existence of transformation from \( s_{t-1} \) to \( s_{t} \) . We obtain the LLF ratio for the transmitted bit \( L({{x}_{t}}) \) caused by the symbol \( {{u}_{t}} \) . For example, for the first decoder we have the follows:

$$ \begin{aligned} {{L}^{1,j}}({{x}_{t}})&=\log \frac{\sum\limits_{\underset{{{u}_{t}}=1}{\mathop{(s',s)}}}{\alpha _{t-1}^{\left( 1 \right)}(s')} \beta _{t}^{\left( 1 \right)}(s) \gamma _{t}^{\left( 1 \right)}(s',s)/P\left( y_{1}^{N} \right)}{\sum\limits_{\underset{{{u}_{t}}=0}{\mathop{(s',s)}}}{\alpha _{t-1}^{\left( 1 \right)}(s')} \beta _{t}^{\left( 1 \right)}(s) \gamma _{t}^{\left( 1 \right)}(s',s)/P\left( y_{1}^{N} \right)}\\ & =\log \frac{\sum\limits_{\underset{{{u}_{t}}=1}{\mathop{(s',s)}}}{\tilde{\alpha }_{t-1}^{\left( 1 \right)}(s')} \tilde{\beta }_{t}^{\left( 1 \right)}(s) \gamma _{t}^{\left( 1 \right)}(s',s)}{\sum\limits_{\underset{{{u}_{t}}=0}{\mathop{(s',s)}}}{\tilde{\alpha }_{t-1}^{\left( 1 \right)}(s')} \tilde{\beta }_{t}^{\left( 1 \right)}(s) \gamma _{t}^{\left( 1 \right)}(s',s)}\\&=L_{c}^{1,j}({{y}_{t}})+L_{a}^{1,j}({{x}_{t}})+L_{e}^{1,j}({{x}_{t}}), \end{aligned} $$
(6)

where \( L_{c}^{1,j}({{y}_{t}}) \) is the channel information, \( L_{e}^{1,j}({{x}_{t}}) \) is the a posteriori LLF ratio of the information bit \( x_t \) , \( \tilde{\alpha }_{t-1}^{\left( 1 \right)}(s') \) is the normalized value of \( \alpha _{t-1}^{\left( 1 \right)}(s') \) , \( \tilde{\beta }_{t}^{( 1 )}(s) \) is the normalized value of \( \beta _{t}^{\left( 1 \right)}(s) \) .

There are three events on the decision making for decoding by the decoder d, \( d\in \) 1, 2, the decoding iteration j, \( j \in \) 1, …, I, data bit:

1) Event \( A_1 \) . There are no sign changes in the values \( L_{a}^{d,j}(x_{t}^{\text{S}}) \) and \( L_{e}^{d,j}(x_{t}^{\text{S}}) \) of j iteration \( \text{sign}\left( L_{a}^{d,j}(x_{t}^{\text{S}}) \right)=\text{sign}\left( L_{e}^{d,j}(x_{t}^{\text{S}}) \right) \) ), \( L\text{(}x_{t}^{\text{S}}\text{)}\ge \text{0} \) . Make a “hard” decision that the bit \( x_{t}^{\text{S}}=1 \) is transmitted.

2) Event \( A_2 \) . There are no sign changes in the values \( L_{a}^{d,j}(x_{t}^{\text{S}}) \) and \( L_{e}^{d,j}(x_{t}^{\text{S}}) \) of j iteration \( \text{sign}\left( L_{a}^{d,j}(x_{t}^{\text{S}}) \right)=\text{sign}\left( L_{e}^{d,j}(x_{t}^{\text{S}}) \right) \) ), \( L\text{(}x_{t}^{\text{S}}\text{)}<\text{0} \) . Make a “hard” decision that the bit \( x_{t}^{\text{S}}=-1 \) is transmitted.

3) Event \( A_3 \) . The sign of the value of a priori \( L_{a}^{d,j}(x_{t}^{\text{S}}) \) and the sign of the value of posterior information \( L_{e}^{d,j}(x_{t}^{\text{S}}) \) of j iterations are not equal to zero ( \( \text{sign}\left( L_{a}^{d,j}(x_{t}^{\text{S}}) \right)\ne \text{sign}\left( L_{e}^{d,j}(x_{t}^{\text{S}}) \right) \) ). Decoding errors may occur.

The uncertainty parameter of the decoder d, \( d\in \) 1, 2, of the decoding iteration j, \( j\in \) 1, …, I is calculated by the following procedure:

$$ \sum\limits_{d=1}^{2}{{{R}^{d,j}}\left( t+1 \right)}={{R}^{d,j}}\left( t \right)+1 , $$
(7)

if \( \text{sign}\left( L_{a}^{d,j}(x_{t}^{\text{S}}) \right)\ne \text{sign}\left( L_{e}^{d,j}(x_{t}^{\text{S}}) \right) \) , \( t\in \) 1, …, N.

The more often the uncertainty values of the R increase, the more often incorrectly decoded bits appear, which leads to the reliability deterioration in the information reception.

The total uncertainty parameter \( {{R}_{\Sigma }} \) is determined by the sum of uncertainty parameters for all decoding iterations:

$$ {{R}_{\Sigma }}=\sum\limits_{j=1}^{I}{{{R}^{d,j}}}. $$
(8)

For the convenience of calculations and adaptation, we normalize the uncertainty parameter as follows:

$$ {{\tilde{R}}_{\Sigma }}=\frac{{{R}_{\Sigma }}}{B \tilde{N} I}=\frac{\sum\limits_{j=1}^{I}{{{R}^{d,j}}}}{B \tilde{N} I}, $$
(9)

where B is the number of information blocks of a certain observation window, \( \tilde{N} \) is the variable size of information block, I is the number of turbo code decoding iterations.

The adaptive selection of the state diagram size of the corresponding RSCC is carried out with parametric adaptation based on the calculation of uncertainty value for the decoder d, \( d\in \) 1, 2, of the decoding iteration j, \( j\in \) 1, …, I, depending on the accumulated decoding uncertainty values of B information blocks.

The block diagram of the iterative TC decoder that contains calculation modules for uncertainty parameters \( {{R}^{d,j}} \) , \( {{R}_{\Sigma }} \) , \( \tilde{R} \) , which adaptive in the number of state diagrams with the decision block, is shown in Fig. 5.

Fig. 5.
figure 5

Block diagram of TC decoder accounting adaptive choice of state diagrams size.

The optimal values of the parameter \( \tilde{N} \) of the state diagrams sizes of TC encoder and decoder are selected according to the values \( \tilde{R} \) . Information about the parameter value \( \tilde{N} \) is transmitted to the TC encoder and decoder to change the input block size and, accordingly, the number of state diagrams of the TC decoder.

The algorithm for implementing the optimization method for encoding/decoding of turbo codes is as follows.

Step 1. Formation of the initial state diagram of the TC encoder and decoder.

Step 2. Formation of the values set of information and check symbols received from the TC encoder:

$$ \begin{aligned} \overline{X}&=({{\overline{X}}^{\text{S}}},\ {{\overline{X}}^{\text{C}}}),\\ {{\overline{X}}^{\text{C}}}&=({{\overline{X}}^{\text{C1}}},{{\overline{X}}^{\text{C2}}}). \end{aligned} $$

Step 3. Formation of the values set of information and check symbols received from the channel for the TC decoder:

$$ \begin{aligned} {{\overline{Y}}^{1}}&=({{L}_{c}}{{\overline{Y}}^{\text{S1}}},\ {{L}_{c}}{{\overline{Y}}^{\text{C1}}}),\\ {{\overline{Y}}^{2}}&=({{L}_{c}}{{\overline{Y}}^{\text{S}2}},\ {{L}_{c}}{{\overline{Y}}^{\text{C}2}}). \end{aligned} $$

Step 4. Formation of a set of LLF ratios at the decoder input about the transmitted information bits at the 1st and 2nd decoders of the j-th iteration

$$ \begin{aligned} L_A&=\left[ \begin{matrix} L_{a}^{1,j}(x_{1}^{\text{S}}) & L_{a}^{1,j}(x_{2}^{\text{S}}) & \ldots & L_{a}^{1,j}(x_{{\tilde{N}}}^{\text{S}}) \\ \end{matrix} \right],\\ L_A&=\left[ \begin{matrix} L_{a}^{2,j}(x_{1}^{\text{S}}) & L_{a}^{2,j}(x_{2}^{\text{S}}) & \ldots & L_{a}^{2,j}(x_{{\tilde{N}}}^{\text{S}}) \\ \end{matrix} \right]. \end{aligned} $$
(10)

Step 5. Formation of a set of LLF ratio a posteriori values about the transmitted bits on the 1st and 2nd TC decoders:

$$ \begin{aligned} L_E&=\left[ \begin{matrix} L_{e}^{1,j}(x_{1}^{\text{S}}) & L_{e}^{1,j}(x_{2}^{\text{S}}) & \ldots & L_{e}^{1,j}(x_{{\tilde{N}}}^{\text{S}}) \\ \end{matrix} \right],\\ L_E&=\left[ \begin{matrix} L_{e}^{2,j}(x_{1}^{\text{S}}) & L_{e}^{2,j}(x_{2}^{\text{S}}) & \ldots & L_{e}^{2,j}(x_{{\tilde{N}}}^{\text{S}}) \\ \end{matrix} \right]. \end{aligned} $$
(11)

Step 6. Loop execution: if

\( \text{sign}\left( L_{a}^{d,j}(x_{t}^{\text{S}}) \right)\ne \text{sign}\left( L_{e}^{d,j}(x_{t}^{\text{S}}) \right) \) , then

$$ \begin{aligned} {{R}^{d,j}}\left( i+1 \right)&={{R}^{d,j}}\left( i \right)+1,\\ {{R}_{\Sigma }}&=\sum\limits_{j=1}^{I}{\sum\limits_{d=1}^{2}{{{R}^{d,j}}}},\\ t&\in {1,...,N},\;\;d\in {1,...,2},\;\;j\in {1,...,I}. \end{aligned} $$

If the condition is not fulfilled, then

$$ {{R}^{d,j}}\left( i+1 \right)={{R}^{d,j}}\left( i \right) . $$

Step 7. Calculation of the average value from B data blocks receiving:

$$ \tilde{R}=\sum\limits_{i\in 1}^{B}{{{R}_{\Sigma i}}} . $$
(12)

Step 8. The value of signal-to-noise ratio Z is calculated, and the parameter \( \tilde{N} \) of state diagrams sizes of the TC encoder and decoder is selected solving the conditional discrete optimization problem:

$$ {{N}^{*}}=\underset{S}{\mathop{\min }}f\left( \left| \tilde{R}( {\tilde{N}} )-{{R}_{\text{spec}}}( {\tilde{N}} ) \right|,Z \right) . $$

The specified uncertainty values \( {{\tilde{R}}_{\text{spec}}} \) are obtained using a test sequence and neural network technologies for the specified values of average probability of the decoding bit error \( {{P}_{B\text{dec}}} \) . In this case, the specified uncertainty values \( {{\tilde{R}}_{\text{spec}}} \) correspond to the values of signal-to-noise ratio (SNR), and these correspondences are determined by simulation modeling, \( f\left( \cdot \right) \) is set as a table.

The normalized uncertainty values that are used for the adaptation of state diagrams sizes of the TC encoder and decoder are presented in Table 1. They are obtained by simulation modeling for TC with the polynomials (1, 13/11), the coding rate R = 1/3, the Max-Log-Map decoding algorithm for various decoding iterations and the state diagrams sizes of TC encoder/decoder for the channel with additive white Gaussian noise with different SNR values.

Table 1. Simulation results for turbo coding with regular interleaving algorithm, Max-Log-Map, decoding algorithm at different decoding iterations and different state diagram sizes

5. Analysis of Results

The simulation modeling is used to analyze the effectiveness of the optimization method for TC encoder and decoder operation using the adaptive selection of state diagrams size. The fourth generation LTE-Advanced mobile communication standard is selected for comparison. The simulation is carried out in the Visual Studio 2019 environment. The data transmission system with turbo codes, the OFDM modulator (demodulator), the channel with additive white Gaussian noise is simulated. The simulation results are obtained based on the reliability α = 0.95, tα = 0.95 (the Laplace function argument), and the relative accuracy d = 0.1.

The turbo code is used with the generators (1, 23/21), the decoding algorithm Log-Map and Max-Log-Map, the redundancy R = 1/3, the pseudo-random and regular interleaver (deinterleaver), the adaptive selection of the state diagrams size \( \tilde{N} \) = 100, 500, 1000. The SNR varies from 0 to 2.5 dB. The average value of the decoding bit error probability \( {{P}_{B\text{dec}\_\text{spec}}}={{10}^{-4}} \) is selected as the specified value of information reliability.

The dependences of the average probability of decoding bit error rate \( {{P}_{B\text{dec}}} \) (BER) vs the signal-to-noise ratio \( {{E}_{b}}/{{N}_{J}} \) are shown in Fig. 6, where \( E_b \) is the bit energy, \( N_J \) is the power spectral density of white Gaussian noise in the channel with additive white Gaussian noise for TC with the polynomials (1, 23/21), the coding rate R = 1/3, the decoding Max-Log-Map algorithm for different decoding iterations and the state diagrams sizes of TC encoder/decoder.

Fig. 6.
figure 6

Dependences of average BER probability vs SNR in channel for second (a), fourth (b), eighth (c) decoding iterations and various state diagrams sizes of TC encoder/decoder.

We see that the probability of decoding error decreases with an adaptive increase of the state diagram size of TC encoder/decoder from the analysis of simulation results (Fig. 6). So, the probability of decoding error decreases changing the parameter \( \tilde{N} \) of state diagram size of encoder/decoder from 100 to 1000, for example, from \( 2\cdot {{10}^{-1}} \) to \( 6\cdot {{10}^{-4}} \) for SNR = 1 dB for 8 decoding iterations, and from \( 8\cdot {{10}^{-1}} \) to \( {{10}^{-5}} \) for SNR = 2 dB for 8 decoding iterations.

6. Conclusions

1. The optimization method for TC encoder and decoder operation by using adaptive selection of the state diagrams size using the proposed decoding uncertainty parameter is proposed in this article.

2. In contrast to the known results, an adaptive choice of the state diagram size of TC encoder/decoder is carried out depending on the SNR in the channel and the values of normalized number of changes in the sign of the posterior-a priori LLF ratios about the transmitted data bits of the turbo code decoder.

3. We can see from the simulation analysis that, the proposed method selects the rational size of the state diagram of TC encoder/decoder to ensure the specified values of information reliability, which is confirmed by comparison with other simulation results.

4. The proposed method is a further development of the adaptive coding technologies without reducing the system capacity and differs from [10] in using various RSCC TC polynomials for adaptation. These polynomials define the required structure and size of the state diagram of the encoder and TC decoder, accordingly. In this case, the interleaver size is fixed. Both methods complement each other and can be used to provide the specified values of information reliability without reducing the path bandwidth of systems and mobile networks of 5G generation.

5. This method can be used in conjunction with other adaptation methods, for example, with the coding rate adaptation, the polynomials of component TC codes, in systems with multivariable adaptation operating under conditions of a priori uncertainty.