# Adaptive Rate-Compatible Non-Binary LDPC Coding Scheme for the B5G Mobile System
## 4 Design and Performance Simulation of the Adaptive RC-NB-LDPC Coding Scheme
### Design, Analysis, and Simulation of RC-NB-LDPC Codes
#### 4.1.2 EXIT Chart Analysis of RC-NB-LDPC Codes  
The Extrinsic-Information-Transfer (EXIT) chart technique is a graphical tool for estimating the decoding threshold of the LDPC code, which is based on Gaussian approximation and can provide intuitive information for the dynamics and convergence of iterative decoding [50]. The EXIT chart is based on the principle that Variable-Node Processors (VNPs) and Check-Node Processors (CNPs) work together and iteratively make bit decisions, with each half-iteration improving the performance metrics. For VNP and CNP, we can obtain the transfer curve of the input metrics and output metrics. The transfer curve of VNP depends on the SNR of the channel. Since the output metric of a processing unit is the input metric of its neighboring processing unit, we can draw two transfer curves in the same coordinate system, with the abscissa and ordinate of a processing unit being exchanged. Such a graph can help predict the code set and decoding threshold for a given variable node and check node degree distribution: the decoding threshold is the signal-to-noise ratio at the focal point of the VNP and CNP transfer curves, which impede the convergence of the two processing units. The LDPC decoder can be thought of as a bipartite graph. Its parity relationship corresponds to the check nodes. The transmission code-word corresponds to the left \(n\) variable nodes. If there is an edge between the \(i\) check node and the \(j\) variable node in the bipartite graph, the element \(H_{i,j}\) in the corresponding check matrix is a non-zero element. The decoding process of the LDPC code is as  
Figure 12: RC-LDPC base matrix scatter diagram. \begin{table}
\begin{tabular}{l l l l l l l} \hline \hline \multirow{2}{*}{**Code**} & **Information** & **Code** & \multirow{2}{*}{
\begin{tabular}{l} **Base Matrix** \\ **Size** \\ \end{tabular} } & **Expansion** & **Variable** & **Variable Node** \\
**Rate** & **Length** & **Length** & **Size** & **Factor** & **Node** & **Degree** \\  & **(Bit/Symbol)** & **(Bit/Symbol)** & **Size** & **Factor** & **Degrees** & **Distributions** \\ \hline \hline \(7/8\) & 14,224/3556 & 16,256/4064 & 4 \(\times\) 32 & 127 & (4, 3, 2) & (7, 14, 11)/32 \\ \(6/7\) & 13,920/3480 & 16,240/4060 & 4 \(\times\) 28 & 145 & (4, 3, 2) & (6, 12, 10)/28 \\ \(5/6\) & 13,440/3360 & 16,128/4032 & 4 \(\times\) 24 & 169 & (4, 3, 2) & (5, 10, 9)24 \\ \(4/5\) & 12,992/3248 & 16,240/4060 & 4 \(\times\) 20 & 203 & (4, 3, 2) & (4, 8, 8)/20 \\ \(3/4\) & 12,144/3036 & 16,192/4048 & 4 \(\times\) 16 & 253 & (4, 3, 2) & (3, 6, 7)/16 \\ \(2/3\) & 10,816/2704 & 16,224/4056 & 4 \(\times\) 12 & 338 & (4, 3, 2) & (2, 4, 6)/12 \\ \(1/2\) & 8096/2024 & 16,192/4048 & 4 \(\times\) 8 & 506 & (4, 3, 2) & (1, 2, 5)/8 \\ \hline \hline \end{tabular}
\end{table} 
Table 3: Parameters of the designed RC-NB-LDPC codes. follows: first, the channel information is used to calculate the initialization information, and then the information between the check node and the variable node is iteratively updated until the information is successfully decoded or the algorithm reached the maximum number of iterations. As is shown in Figure 13, the mutual information amount of the channel message is represented by \(I_{ch}\), the input mutual information amount of VND is represented by \(I_{av}\), the output mutual information amount is represented by \(I_{ev}\), the input mutual information amount of CND is represented by \(I_{ac}\), and the output mutual information amount is represented by \(I_{ec}\). We assume that the degree distribution is \((d_{v},d_{c})\), while a regular LDPC code rate is \(R=1-d_{v}/d_{c}\). When the noise variance is \(\delta\) (corresponding SNR is Eb/N0) on the AWGN channel, the two EXIT functions are:  
\[I_{ev}=J\bigg{(}\sqrt{(d_{v}-1)\big{[}J^{-1}(I_{av})\big{]}^{2}+\delta^{2}} \bigg{)} \tag{12}\]  
\[I_{ec}=1-J\bigg{(}\sqrt{(d_{c}-1)\big{[}J^{-1}(1-I_{ac})\big{]}^{2}}\bigg{)} \tag{13}\]  
For irregular LDPC codes, \(I_{ev}\) and \(I_{ac}\) are calculated based on the weighted average.