# LDPC Codes on Balanced Incomplete Block Designs: Construction, Girth, and Cycle Structure Analysis
## 5 Simulation Results  
In the following simulations, we assume an additive white Gaussian noise (AWGN) channel, binary phase-shift keying (BPSK) modulation, and the sum-product algorithm (SPA) with 50 iterations for decoding. \begin{table}
\begin{tabular}{c c c c c} \hline \hline \multirow{2}{*}{**BIBDs**} & \multicolumn{4}{c}{**BIBD-LDPC Codes**} \\ \cline{2-5}  & **Code Length** & **Row Weight** & **Column Weight** & **Code Rate** \\ \hline \((3,1;v)\) & \(v(v-1)/6\) & \((v-1)/2\) & 3 & \(\approx(1-6/(v-1))\) \\ \((4,1;v)\) & \(v(v-1)/12\) & \((v-1)/3\) & 4 & \(\approx(1-12/(v-1))\) \\ \((5,1;v)\) & \(v(v-1)/20\) & \((v-1)/4\) & 5 & \(\approx(1-20/(v-1))\) \\ \(Consider BIBD\((3,1;63)\). This design consists of 63 points and 651 blocks. Using its incidence matrix, we construct a (3,31)-regular (651,589) BIBD-LDPC code. The bit-error rate (BER) and word-error rate (WER) of this code, decoded using the sum-product algorithm (SPA), are illustrated in Figure 1. For comparison, we also construct a (3,31)-regular (651,588) LDPC code based on the progressive edge-growth (PEG) algorithm [16], referred to as the PEG-LDPC code. The BER/WER performance of this PEG-LDPC code is also included in Figure 1. From Figure 1, it is evident that the (651,589) BIBD-LDPC code outperforms the (651,588) PEG-LDPC code by approximately 0.3 dB at a WER of \(10^{-6}\). Additionally, the BIBD-LDPC code exhibits no error floor down to a BER of \(2\times 10^{-9}\). Notably, the (3,31)-regular (651,589) BIBD-LDPC code contains 39,060 cycles of length 6 and 1,669,815 cycles of length 8. Consider BIBD\((3,1;75)\). This design consists of 75 points and 925 blocks. The null space of the incidence matrix of this BIBD yields a (3,37)-regular (925,851) BIBD-LDPC code. The BER performance of this code under iterative decoding using the sum-product algorithm (SPA) with 1, 3, 5, 10, 20, and 50 iterations is depicted in Figure 2. As shown in Figure 2, the iterative decoding of this code converges very quickly. The BER performance curves for 20 and 50 iterations are nearly identical, indicating convergence. At a BER of \(10^{-6}\), the performance gap between 5 and 50 iterations is only 0.25 dB, while the gap between 10 and 50 iterations is approximately 0.1 dB. Furthermore, this BIBD-LDPC code exhibits a low error floor, as demonstrated in Figure 2. For the (3,37)-regular (925,851) BIBD-LDPC code, the numbers of cycles of lengths 6 and 8 are 66,600 and 3,446,550, respectively. For performance benchmarking, we compare the constructed (3,37)-regular (925,851) BIBD-LDPC code against the standard (651,589) 5G-LDPC code specified in [36]. Figure 3 presents the BER/WER performance under SPA decoding with both 5 and 20 iterations. It can be seen from Figure 3 that the constructed BIBD-LDPC code achieves approximately 0.2 dB coding gain at a BER of \(10^{-5}\) with 20 decoding iterations compared to the 5G-LDPC code, and the performance advantage becomes more pronounced (about 1 dB gain at BER \(=10^{-5}\)) when using only 5 iterations. These comparative results validate that the proposed BIBD construction maintains performance with competitive with modern 5G standards while offering faster convergence, a critical advantage for latency-sensitive applications. Figure 1: The error performance of the constructed (651,589) BIBD-LDPC code and the comparable (651,588) LDPC code designed by the PEG algorithm in [16]. To evaluate the performance of our proposed BIBD-LDPC codes, we employ extrinsic information transfer (EXIT) chart analysis to examine their convergence behavior [37]. Figure 4 illustrates a typical EXIT chart for regular LDPC codes operating over a binary-input AWGN channel with parameters of \(\gamma=3\) and \(\rho=37\). The EXIT chart utilizes extrinsic mutual information as its key metric, comprising two characteristic curves: (1) The upper solid blue curve (\(I_{E,V}\) vs. \(I_{A,V}\)) represents the variable-node processors (VNPs), showing the output extrinsic mutual information (\(I_{E,V}\)) as a function of input a priori information (\(I_{A,V}\)).