## 6 Raptor-like Decoding of QC-RL-LDPC Codes  
The decoding can be based on the belief propagation (BP) scheme with messages (beliefs) calculated as in the LDPC decoding with an SPA algorithm, or one of its LLR variants. In accordance with the proposal in [13], the overall concept is to decode the HRC and IRC parts together. The joint parity check matrix of both parts, corresponding to the whole Tanner graph of the QC-RL-LDPC code (as in Figure 3), is given as  
\[\textbf{H}=\begin{bmatrix}\textbf{H}_{\text{HR}}&\mathbf{0}\\ \textbf{H}_{\text{IR}}&\textbf{I}\end{bmatrix} \tag{9}\]  
where **I** is an identity matrix. BP generally proceeds according to the graph in Figure 3. The decoding algorithm calculates the LLR messages for every edge of the graph in every iteration. However, it can be noted that it is inefficient to initialize the decoding process with a priori beliefs every time the decoder receives a new IR chunk. Therefore, we have developed the decoding procedure, in which the iterative process is suspended if the correct vector is not found after some number of iterations and then resumed after receiving a new chunk with LLR-input IR information. Other than IR, beliefs (messages exchanged between nodes) remain as obtained in the previous iteration. The decoding algorithm is presented in Figure 5, where the processing sequence as well as the data flow (in blue lines) are shown. The algorithm can be summarized as follows.  
1. Soft input decisions of the HR part, \(LLR(\mathbf{c}|\mathbf{y})\), are delivered first to the decoder, which proceeds with a number of \(I_{\text{HR}}\) iterations, computing variable node messages, denoted as \(Q_{nm}\), and check node messages, denoted as \(R_{mn}\), for \(n=1,\ldots,N\) and \(m=1,\ldots,M\).
2. In every iteration, based on the total beliefs for the HR codeword symbols \(Q_{n}\), the error syndrome \(\mathbf{s}\) is checked, and if a correct codeword is obtained, the decoding ends with success.
3. After \(I_{\text{HR}}\) iterations, the decoder waits for the next IR chunk. The chunk counter is denoted as \(j\), while the iteration counter is \(i\) in Figure 5. After every subsequent chunk reception, the decoding is resumed for \(I_{\text{IR}}\) iterations, but the initial check-to-variable messages \(R_{nm}\) are taken from the previously suspended decoding part.  
The computations of beliefs \(R_{mn}\), \(Q_{nm}\), for \(n=1,\ldots,N\) and \(m=1,\ldots,M\), can be done with one of the well-known BP message calculation methods, such as min-sum or normalized min-sum [34]. In our experiments, we used a computer model of the corrected min-sum algorithm [34]. An important choice of the number of iteration limits \(I_{\text{HR}}\) and \(I_{\text{IR}}\) can be made experimentally. The experimental results of the decoding performance will be provided in Section 8.  
For a highly erroneous initial HR code block, the information calculated during initial decoding iterations is not enough to correct errors, but all iteratively enhanced beliefs are saved. Based on it, the next iterations are started, with additional soft information received. The point is that there is no need to calculate the beliefs from the beginning after every chunk transmission.  
Figure 5: The developed algorithm for Raptor-like decoding.