## 2 LDPC Specifications in 5G-NR  
5G-NR standards adopt LDPC codes as data channels due to their exceptional performance and suitability for high-throughput communication incorporating specific features [17]. First, the layered decoding breaks down the complexity of the Parity Check Matrix into manageable layers [17; 18]. Second, the QC-LDPC family, controlled by specific base graphs, allows for more efficient encoding and decoding than traditional LDPC codes [17; 18; 19]. The 5G data channel error correction scheme employs the recently developed QC-LDPC code. This code's construction relies on two fundamental matrices known as BG1 and BG2 [18; 19]. The two base graphs are defined by the 3 rd Generation Partnership Project (3 GPP) standard for 5G-NR channel coding and decoding [20]. Table 1 presents the characteristics of both base graphs. BG1 is specifically designed for higher coding efficiency, supporting a wider range of code rates from 1/3 to 8/9 and handling larger information block sizes between 500 and 8448 bits [21; 22]. In contrast, BG2 is optimized for scenarios requiring lower code rates, deviating between 1/5 and 2/3, and is better suited for smaller information blocks ranging from 40 to 2560 bits [22]. A crucial aspect of 5G LDPC codes is their irregular structure for both variable and check nodes [23]. In the case of BG1, check node degrees (the number of connected variable nodes) range from 3 to 19, while variable node degrees (the number of connected check nodes) range from 1 to 30 [24]. This irregularity contributes to the flexibility of the code but also poses challenges for efficient hardware implementation [24]. The 5G-NR LDPC code design allows for a wide range of code sizes and error correction capabilities (code rates). An expansion factor \(Z\), with a maximum value of 384, can expand the base matrix. This high expansion factor enables very high levels of parallelism in hardware, leading to faster encoding and decoding processes [25]. However, in contrast to traditional LDPC codes used in other standards, the 5G QC-LDPC encoder and decoder must support multiple lifting sizes \(Z\) and various base graph configurations to achieve optimal performance [26]. Each BG has dimensions \(R\times C\) with each element \(b_{i,j}\geq-1\), where \(i\in\{1,2,3,\ldots,R\}\) and \(j\in\{1,2,3,\ldots,C\}\). The corresponding Parity Check Matrix (PCM) is obtained by expanding the base graph using the shifting factor \(Z\) as follows [26; 27]:  
\(b_{i,j}=-1\) elements are replaced with \(Z\)-by-\(Z\) all zero sparse identity matrix. \(b_{i,j}>-1\) elements are expanded to \(Z\)-by-\(Z\) identity matrix right shifted by \(b_{i,j}\). This expansion process results in a much larger PCM H with \(M=Z\times R\) rows and \(N=Z\times C\) columns. Using circulant matrices to construct 5G QC-LDPC codes allows them to benefit from layered scheduling techniques. In layered scheduling, the decoding layer typically processes \(Z\) consecutive rows of the expanded parity-check matrix (H). These \(Z\) rows correspond to a single row in the base matrix due to the use of circulant matrices in the construction process [27; 28]. The expansion factor \(Z\) can take on various values as shown in Table 2 determined by the formula \(Z=a\times 2^{k}\), where \(a=\{2,3,5,7,9,11,13,15\}\) and \(k=\{0,1,2,3,4,5,6,7\}\). The structure of the base graphs can be visualized as a combination of several key blocks (Figure 2) [27; 28] as indicated by the following:  
BG1: A: \(4\times 22\), E: \(4\times 4\), O (all \(-1\)'s): \(4\times 42\),  
B: \(42\times 22\), C: \(42\times 4\), I (identity): \(42\times 42\). BG2: A: \(4\times 10\), E: \(4\times 4\), O (all \(-1\)'s): \(4\times 38\),  
B: \(38\times 10\), C: \(38\times 4\), I (identity): \(38\times 38\).