NOTE: This section is Under-Edit if necessary: Construction began on August 13, 2021 and was finished on August 13, 2021.

__Low-Density Parity-Check (LDPC) Binary Codes:
Irregular Gallager Coded (Column Weight Distribution) Signaling over a Parallel MultiChannel and Iterative Message-Passing Channel Decoding__

by Darrell A. Nolta
August 12, 2021 with November 2, 2021 Update

The

**AdvDCSMT1DCSS (T1) Professional (T1 Version 2)** system tool has been used to investigate the Bit Error Rate (BER) performance for Irregular Gallager Coded [Column Weight Distribution (CW)] Signaling over a Discrete-Time Waveform Parallel MultiChannel (PMC) with Additive White Gaussian Noise. As a reminder, note that Regular and Irregular Gallager Codes (GC) are Low-Density Parity-Check (LDPC) Codes.

This investigation/experiment can easily be conducted by

**AdvDCSMT1DCSS (T1) Professional (T1 V2)** because of the capabilities of

**T1 V2** that are discussed in the paper 'Low-Density Parity-Check (LDPC) Binary Codes: Signaling over a Parallel MultiChannel and Iterative Message-Passing Channel Decoding.' This paper is found on this website.

For an Irregular GC, two possible generation types are supported by

**T1 V2**. The first generation type produces an Irregular GC where the rows of its parity-check matrix vary in weights (where row weight is the number of "ones" in a row) and all of the columns of its parity-check matrix have the same number weights. This type of Irregular GC type can be described as having a Row Weight Distribution. The second generation type produces an Irregular GC where the columns of its parity-check matrix vary in weights (where column weight is the number of "ones" in a column) and all of the rows of its parity-check matrix have the same number weights. This type of Irregular GC type can be described as having a Column Weight Distribution

It is possible for a generated Column Weight Distribution Irregular Gallager Code to have the 'row overlap' condition where a pair of Matrix A rows have more than one "one" in common. The User will have the choice to accept or reject this code (i.e., cease the generation process).

For a Row Weight Disribution Irregular GC, in addition to the Regular GC parameters specification, the User specifies the Row Weight Distribution (depends on the selected Initial Row Weight), enters the Row Weight Distribution Random Number Generator Seed (positive number) and its Randomization number.

For a Column Weight Disribution Irregular GC, in addition to the Regular GC parameters specification, the User specifies the Column Weight Distribution (depends on the selected Initial Column Weight), enters the Column Weight Distribution Random Number Generator Seed Vector (two positive numbers) and its Randomization number.

The progress of a Row Weight Irregular Gallager code generation is tracked via a Gallager Code (GC) Progress and Elapsed Time Displayer that is governed by the GC Generation Clock Display Interval (GCG Clk D I) parameter. For a Column Weight Distribution Irregular Gallager code generation, two Gallager Code (GC) Progress and Elapsed Time Displayers and their GCG Clk D I parameters are used for display of the generation progress.

The purpose of this investigation/experiment is to determine if a Column Weight Distribution Irregular Gallager LDPC code's simulated BER performance can exceed the simulated BER performance of a Regular Gallager LDPC code (RGC). These Gallager LDPC codes belongs to a set (family) of codes that consist of one Regular Gallager Code (j = 3, k = 4, N = 504) that serves as a parent and a subset of Irregular Gallager Codes (IRRGC) that are derived from its parent RGC. Each one of these Gallager LDPC codes is

**T1 V2** Computer-generated. This determination is based on the comparison of BER performance for these codes where these codes are used in LDPC Coded Signaling over two basic Discrete-Time PMC channels: Additive White Gaussian Noise (AWGN) with AWGN and Discrete MultiTone (DMT) Modulation with AWGN.

**T1 V2** uses a model for the Discrete MultiTone (DMT) Modulation MultiCarrier/MultiChannel that is based on an Orthogonal frequency-division Multiplexing (OFDM) FFT-Based] with AWGN PMC model. There are two DMT Modulation models that

**T1 V2** has implemented:

LDPC Coded FFT-based DMT Discrete Time Waveform AWGN Modulation Channel Type: 0) MultiCarrier Signal transmitted over a Single Channel or 1) MultiCarrier Signal transmitted over a MultiChannel (MC) SubChannel.

Note: For the second time,

**T1 Professional** for this experiment uses

**T1 V2** features of Orthogonal Binary PSK (PI/2 BPSK) and Gray Coded Square 256-QAM for Low-Density Parity-Check Coded Signaling over a Parallel MultiChannel.

As a reminder, a Low-Density Parity-Check Coded Parallel MultiChannel (MC) is partitioned into G parallel subchannel groups where a subchannel group consists of K parallel subchannels. The set {G * N

_{g}} represents the possible partitions of the LDPC Code's blocklengh (N). This approach is used for the LDPC Code & Signaling over a PMC application because N can be very large and the process of Codebits to Channel Input Bits assignment can quickly become unmanageable. Note {li} is the Group's set of the Number of Channel Input Bits.

This investigation used a

**T1 V2** capability of modeling and simulating Multiple Iteration Soft Input/Soft-Decision Output (SISO) LDPC Code Channel Decoding using the Sum-Product Algorithm (SPA). The SPA is a 'symbol-by-symbol' Maximum a Posteriori Probability (MAP) Belief Propagation Algorithm.

**Consider** the SPA Decoding Algorithm Bit Error Rate (BER) or Bit Error Probability P

_{b} performance simulation results for Regular and Irregular Gallager Coded (RGC & IRRGC CW) Generator-based Encoding, Signaling, and SPA Decoding that were produced by

**T1 V2** that are displayed below in

**Figure 1** plot for the AWGN PMC. In addition, consider

**Figure 2 and 3** plots for the DMT Modulation PMC MultiCarrier Signal transmitted over a Single Channel and MultiCarrier Signal transmitted over a MultiChannel (MC) SubChannel, respectively.

For comparison purposes, the simulated BER results for UnCoded (UC) Distinct 8-MC Signaling over a Discrete-Time Waveform AWGN PMC (Non Distorting, UnRestricted Bandwidth,) are included in

**Figure 1**. The simulated BER results for UC Distinct 8-MC Signaling over Discrete-Time Waveform DMT Modulation PMC Type 0 and 1 (Non Distorting, UnRestricted Bandwidth,) are included in

**Figure 2 and 3**, respectively. These simulated BER results are based on the transmission of 10,000,032 Equal probable i.i.d. Info Bits. The Signaling Schemes consist of {l

_{i}} = {1,1,2,6,8,8,8,8} <=> {BPSK, PI/2 BPSK, QPSK, 64-QAM, 256-QAM, 256-QAM, 256-QAM, 256-QAM} for both PMCs. Note that Gray-coded Square signal constellation for QPSK, 64-QAM and 256-QAM Signaling is used. A Maximum Likelihood Demodulation scheme is used.

Each figure's BER plot displays six curves where a curve is constructed from the set of simulated P

_{b} values that correspond to a set of E

_{b}/N

_{0} [Signal-to-Noise Ratio (SNR)] values. Thus, a BER curve is represented as {(E

_{b}/N

_{0}, P

_{b})} for a number of

**T1 V2** simulations. Each RGC (IRRGC) curve displays the BER performance behavior of a Regular (Irregular) Gallager Coding and SPA Iterative Decoding system example that was used for a

**T1 V2** simulation.

Since a PMC simulation consists of a number of Signaling Schemes (Distinct) the possible choices for the set of Signal Scheme's E

_{b}/N

_{0}^{(k)} values can become very large. To simplify this matter, for each P

_{b} simulation, all the Signaling Schemes' E

_{b}/N

_{0}^{(k)} values are specified so that they are all equal. Thus, a plot's E

_{b}/N

_{0} value is defined as

E

_{b}/N

_{0} = E

_{b}/N

_{0}^{(1)} = E

_{b}/N

_{0}^{(2)} = … = E

_{b}/N

_{0}^{(K)} , for 1 through K Signaling Schemes.

The five Gallager LDPC Coding Systems that were simulated to produce BER results for the AWGN PMC (as shown in

**Figure 1**) are as follows:

1) [Number of Code Word Bits (N) = 504, column weight (j) = 3, row weight (k) = 4] Regular Gallager Code [Rate (R) = 0.253968], {G * Ng} = {12 * 42}, 96 Subchannels, Distinct 8-MC Group (G), {l

_{i}} = {1,1,2,6,8,8,8,8} <=> {BPSK, PI/2 BPSK, QPSK, 64-QAM, 256-QAM, 256-QAM, 256-QAM, 256-QAM} for 1,000,064 Equal probable i.i.d. Information (Info) Bits;

2) [N = 504, column weight vector: {j-1,j = 3,j+1}, k = 4,] Irregular Gallager Code (R = 0.250000), {G * Ng} = {12 * 42}, 96 Subchannels, Distinct 8-MC G, {l

_{i}} = {1,1,2,6,8,8,8,8} <=> {BPSK, PI/2 BPSK, QPSK, 64-QAM, 256-QAM, 256-QAM, 256-QAM, 256-QAM} for 1,000,062 Equal probable i.i.d. Information (Info) Bits;

3) [N = 504, column weight vector: {j-2,j-1,j = 3,j+1,j+2}, k = 4] Irregular Gallager Code (R = 0.250000), {G * Ng} = {12 * 42}, 96 Subchannels, Distinct 8-MC G, {l

_{i}} = {1,1,2,6,8,8,8,8} <=> {BPSK, PI/2 BPSK, QPSK, 64-QAM, 256-QAM, 256-QAM, 256-QAM, 256-QAM} for 1,000,062 Equal probable i.i.d. Information (Info) Bits;

4) [N = 504 , column weight vector: {j-1,j = 3,j+1}, k = 4] Irregular Gallager Code (R = 0.250000), {G * Ng} = {12 * 42}, 96 Subchannels, Distinct 8-MC G, {l

_{i}} = {1,1,2,6,8,8,8,8} <=> {BPSK, PI/2 BPSK, QPSK, 64-QAM, 256-QAM, 256-QAM, 256-QAM, 256-QAM} for 1,000,062 Equal probable i.i.d. Information (Info) Bits;

5) [N = 504, column weight vector: {j-2,j-1,j = 3,j+1,j+2}, k = 4] Irregular Gallager Code (R = 0.250000), {G * Ng} = {12 * 42}, 96 Subchannels, Distinct 8-MC G, {l

_{i}} = {1,1,2,6,8,8,8,8} <=> {BPSK, PI/2 BPSK, QPSK, 64-QAM, 256-QAM, 256-QAM, 256-QAM, 256-QAM} for 1,000,062 Equal probable i.i.d. Information (Info) Bits.

The same five Gallager LDPC Coding Systems as described above were simulated to produce BER results for the two DMT Modulation PMC models (as shown in

**Figure 2 and 3**) except Punctured BPSK was used instead of PI/2 BPSK. This Punctured BPSK modulation allowed a zero ('0') codebit to be transmitted and an one ('1') codebit to not be transmitted.

Note that Gray-coded Square signal constellation for QPSK, 16-QAM, 64-QAM and 256-QAM Signaling is used.

The following table shows the number of Input Channel Symbols transmitted per each CodeWord (Frame) and the total number of transmitted Frames for each Gallager code for the AWGN PMC simulations.

Code N BPSK PI/2 BPSK QPSK 64-QAM 256-QAM No. of Frames
1) Regular 504 12 12 12 12 48 7813
2) Irregular 504 12 12 12 12 48 7937
3) Irregular 504 12 12 12 12 48 7937
4) Irregular 504 12 12 12 12 48 7937
5) Irregular 504 12 12 12 12 48 7937

For the simulations of DMT Modulation PMC models, PI/2 BPSK is replaced by a partial Punctured BPSK.

Note: For all of the Gallager Codes, all of the Output Channel Symbols (corrupted Input Channel Symbols) are used by the SPA Decoding process.

**Figure 1** displays the BER versus E

_{b}/N

_{0} for the Maximum Number of Iterations per Block (Imax) of 50 for the five above described Gallager LDPC Coding Systems for Signaling over a Discrete-Time Waveform AWGN PMC (Non Distorting, UnRestricted Bandwidth) and using SPA Decoding.

**Figure 2** displays the BER versus E

_{b}/N

_{0} for the Maximum Number of Iterations per Block (Imax) of 50 for the five above described Gallager LDPC Coding Systems for Signaling over Discrete-Time Waveform DMT Modulation PMC of LDPC Coded FFT-based DMT Discrete Time Waveform AWGN Modulation Channel Type 0 (MultiCarrier Signal transmitted over a Single Channel).

**Figure 3** displays the BER versus E

_{b}/N

_{0} for the Maximum Number of Iterations per Block (Imax) of 50 for the five above described Gallager LDPC Coding Systems for Signaling over Discrete-Time Waveform DMT Modulation PMC of LDPC Coded FFT-based DMT Discrete Time Waveform AWGN Modulation Channel Type 1 [MultiCarrier Signal transmitted over a MultiChannel (MC) SubChannel].

There are a number of important conclusions that can be drawn from the below displayed simulated Iterative LDPC Code SPA Decoding BER results in

**Figure 1, 2, and 3**. It appears that

**T1** is correctly modeling and simulating LDPC Coded Signaling over a Parallel MultiChannel/MultiCarrier Channel with AWGN with SPA Decoding for the selected Regular and Irregular Gallager Codes.

**Figure 1** clearly shows that the reduction in BER as the SNR is increased for the Gallager Coded Signaling over an AWGN PMC based on Distinct 8-MC Group with SPA Decoding as compared to the UnCoded Signaling over a Distinct 8-MC AWGN PMC. But only the RGC and IRRGC CW 3 codes exhibit the 'waterfall' shape BER curve. For a SNR range of 7dB to ~8.25 dB, the BER performance of IRRGC CW 3 exceeds the BER performance of RGC. For SNR greater than ~8.25 dB, the BER performance of RGC exceeds the IRRGC CW 3's BER performance. The other IRRGC CW codes (1, 2, & 4) exhibit a different BER curve behavior (a shift from 'waterfall' slope to a gradual decrease in slope of the curve). And IRRGC CW 1 exhibits a singularity behavior where its BER is zero at 13 dB SNR and non-zero at SNR of 12 dB and 14 dB.

To judge the best Gallager Code's BER performance, the ranking will be based on Minimization of SNR at a BER of 10-5 or Minimization of BER at 8.5 dB SNR.

Rank Code N Rate {l_{i}} l^{eff} (Average value of {l_{i}})
Best Regular 504 0.253968 {1,1,2,6,8,8,8,8} 5.25
Irregular CW 3 504 0.250000 {1,1,2,6,8,8,8,8} 5.25
Irregular CW 1 504 0.250000 {1,1,2,6,8,8,8.8} 5.25
Irregular CW 4 504 0.250000 {1,1,2,4,8,8,8,8} 5.25
Worst Irregular CW 2 504 0.250000 {1,1,2,6,8,8,8,8} 5.25

Note: RGC & IRRGC CW 3 BER Values are ZERO at 9.0, 10.0, 11.0, 12.0, 13.0, and 14.0 dB SNR.

**Figure 2** clearly shows that the reduction in BER as the SNR is increased for the Gallager Coded Signaling over a DMT Modulation PMC Type 0 based on Distinct 8-MC Group with SPA Decoding as compared to the UnCoded Signaling over a Distinct 8-MC DMT Modulation PMC. But only the RGC and IRRGC CW 3 codes exhibit the 'waterfall' shape BER curve. For a SNR range of 7dB to ~8.25 dB, the BER performance of IRRGC CW 3 exceeds the BER performance of RGC. For SNR greater than ~8.25 dB, the BER performance of RGC exceeds the IRRGC CW 3's BER performance. The other IRRGC CW codes (1, 2, & 4) exhibit a different BER curve behavior (a shift from 'waterfall' slope to a gradual decrease in slope of the curve).

To judge the best Gallager Code's BER performance, the ranking will be based on Minimization of SNR at a BER of 10-5 or Minimization of BER at 9.0 dB SNR.

Rank Code N Rate {l_{i}} l^{eff} (Average value of {l_{i}})
Best Regular 504 0.253968 {1,1,2,6,8,8,8,8} 5.25
Irregular CW 3 504 0.250000 {1,1,2,6,8,8,8,8} 5.25
Irregular CW 1 504 0.250000 {1,1,2,6,8,8,8.8} 5.25
Irregular CW 4 504 0.250000 {1,1,2,4,8,8,8,8} 5.25
Worst Irregular CW 2 504 0.250000 {1,1,2,6,8,8,8,8} 5.25

Note: RGC & IRRGC CW 3 BER Values are ZERO at 10.0, 11.0, 12.0, 13.0, and 14.0 dB SNR.

**Figure 3** clearly shows that the reduction in BER as the SNR is increased for the Gallager Coded Signaling over a DMT Modulation PMC Type 1 based on Distinct 8-MC Group with SPA Decoding as compared to the UnCoded Signaling over a Distinct 8-MC DMT Modulation PMC. But only the RGC and IRRGC CW 3 codes exhibit the 'waterfall' shape BER curve. For a SNR range of 7dB to 9 dB, the BER performance of IRRGC CW 3 exceeds the BER performance of RGC. For SNR greater than 9 dB, the BER performance of RGC exceeds the IRRGC CW 3's BER performance. The other IRRGC CW codes (1, 2, & 4) exhibit a different BER curve behavior (a shift from 'waterfall' slope to a gradual decrease in slope of the curve).

To judge the best Gallager Code's BER performance, the ranking will be based on Minimization of SNR at a BER of 10-5 or Minimization of BER at 10.0 dB SNR.

Rank Code N Rate {l_{i}} l^{eff} (Average value of {l_{i}})
Best Regular 504 0.253968 {1,1,2,6,8,8,8,8} 5.25
Irregular CW 3 504 0.250000 {1,1,2,6,8,8,8,8} 5.25
Irregular CW 1 504 0.250000 {1,1,2,6,8,8,8.8} 5.25
Irregular CW 4 504 0.250000 {1,1,2,4,8,8,8,8} 5.25
Worst Irregular CW 2 504 0.250000 {1,1,2,6,8,8,8,8} 5.25

Note: RGC BER Values are ZERO at 10.0, 11.0, 12.0, 13.0, 14.0 dB at SNR & IRRGC CW 3 are ZERO at 11.0, 12.0, 13.0, 14.0 dB SNR.

Next, we attempt to answer the question: can an Irregular Gallager CW LDPC code's BER performance exceed the BER performance of a Regular Gallager LDPC code (RGC) when signaling over an AWGN PMC, DMT Modulation PMC Type 0, or DMT Modulation PMC Type 1 and using Sum-Product Algorithm Decoding.

We observe that for all three PMC applications (as shown in

**Figure 1, 2 & 3**) , an Irregular Gallager CW LDPC Code's Simulated BER performance exceeds the simulated BER performance of its parent Regular Gallager LDPC Code. But this occurs for a range of SNR: 7 dB to ~8.25 db (AWGN), 7 dB to~ 8.25 dB (DMT Modulation Type 0), & 7 dB to 9 dB (DMT Modulation Type 1). But for SNR greater than the right SNR endpoint, the RGC BER performance exceeds the IRRGC BER performance.

One Million plus Info Bits for each Regular and Irregular Gallager Coded (CW) Signaling and SPA Decoding system

**T1V2** simulation was chosen to allow for reasonable simulation time to generate simulated BER results that can be use to make a 1st order comparison of BER performance between j = 3 Gallager Coded Signaling over a Parallel MultiChannel and SPA Decoding. Still, it must be realized that to obtain high confident BER results for long block code lengths, simulation time could take many hours or days (depending on the User's computer). Note that Dr. Gallager discusses this issue in his 1962 paper

**[1]** and 1963 book

**[2]**.

Let us look at the validity of our

**T1 V2** simulated results for AWGN PMC, DMT Modulation PMC Type 0, and DMT Modulation PMC Type 1 by comparing the degree of AWGN corruption of the Input Channel Symbols [via Gaussian Random Number (GRN) generation and addition] per each simulation:

I) AWGN PMC

Code N No. of GRNs GRN Mean GRN Variance Minimum GRN Value Maximum GRN Value
1) RGC 504 11,250,720 0.000188 0.499752 -3.591052 3 .902831

All four IRRGC CW codes:

IRRGC CW 504 11,429,280 0.000171 0.499770 -3.597991 3.902831

Further, the generated minimum and maximum Gaussian RN values exceed 5 standard deviations.

II) DMT Modulation PMC Type 0

Code N No. of GRNs GRN Mean GRN Variance Minimum GRN Value Maximum GRN Value
1) RGC 504 4,000,256 -0.000128 0.499338 -3.478670 3.774967

All four IRRGC CW codes:

IRRGC CW 504 4,063,744 -0.00021 0.499359 -3.478670 3.426650

Further, the generated minimum and maximum Gaussian RN values exceed 4.8 standard deviations.

III) DMT Modulation PMC Type 1

Code N No. of GRNs GRN Mean GRN Variance Minimum GRN Value Maximum GRN Value
1) RGC 504 3,000,192 -0.000525 0.499456 -3.478670 3.774967

All four IRRGC CW codes:

IRRGC CW 504 3,047,808 0.000106 0.499509 -3.478670 3.774967

Further, the generated minimum and maximum Gaussian RN values exceed 4.9 standard deviations.

It appears from these Gaussian Random Number (RN) results for the five Gallager Codes and the three simulated PMC channel types, the Gaussian RN values generated by

**T1 V2** are an excellent model for baseband AWGN.

And, thus, the conclusions derived from

**Figure 1, 2, and 3** may be valid. It was found that in all three PMC sets of simulations (AWGN PMC, DMT Modulation PMC Type 0 & 1) an Irregular Gallager CW LDPC Code's Simulated BER performance can exceed the simulated BER performance of its parent Regular Gallager LDPC Code (as shown in

**Figure 1, 2 & 3**). But this BER performance only occurs for a range of SNR and for a SNR greater than that range, the RGC BER performance exceeds the IRRGC BER performance. To investigate these conclusions further, each Gallager Coding System simulation would be rerun with the initial number of Information (Info) Bits increased from 1 Million Info Bits to 10 Million Info Bits to obtain more reliable simulated BER results.

One must note that the analysis of BER performance of Gallager Codes (Parent Regular & Children Irregular) when used to signal over AWGN PMC, DMT Modulation PMC Type 0, and DMT Modulation PMC Type 1 channel is a very complex matter. This is true even when the same 1-D & 2-D signaling schemes are used. And the matter is not simplified when the number of transmitted Frames for all four IRRGC CW codes (7937) are equal but not equal to the number of transmitted Frames for the RGC code (7813).

Plus, when we add in the complexity of the Iterative Message-Passing Channel Decoding (Sum-Product Algorithm) the analysis becomes unmanageable. One must realize that for each Frame (transmission of a CodeWord & decoding of a Corrupted CodeWord), the SPA Decoder begins by receiving the CodeBits' Reliability (Belief) data and then starts the Iterative process of Message-Passing (Belief Propagation) and SPA processing of the received beliefs.

But how does one do this analytically for the possible Gallager Coded Modulation choices and Parity-Check Matrix choices for possible PMC choices? A Gallager Code's parity-check matrix can be translated into the Tanner Graph that can be used to visualize the structure of this message-passing of beliefs along the edges of the Tanner Graph. It has been suggested that if one can compare the edge structure of each Gallager code, one might be able to compare qualitatively the BER performance of the codes

**[3]**: there might be an improvement in BER performance and bit node degree profile differences. Also, there might be a relationship between bit node degree profile and BER performance improvement.

Let us look at the Edge structure of the five Gallager Code's Tanner Graphs:

Code N Bit Node Edges (Degree) No. of Check Nodes with 4 Edges
1) RGC 504 No. of Bit Nodes with Degree 3 = 504 378

2) IRRGC CW 1 504 No. of Bit Nodes with Degree 2 = 101 378
No. of Bit Nodes with Degree 3 = 302
No. of Bit Nodes with Degree 4 = 101

3) IRRGC CW 2 504 No. of Bit Nodes with Degree 1 = 91 378
No. of Bit Nodes with Degree 2 = 58
No. of Bit Nodes with Degree 3 = 210
No. of Bit Nodes with Degree 4 = 50
No. of Bit Nodes with Degree 5 = 95

4) IRRGC CW 3 504 No. of Bit Nodes with Degree 2 = 109 378
No. of Bit Nodes with Degree 3 = 286
No. of Bit Nodes with Degree 4 = 109

5) IRRGC CW 4 504 No. of Bit Nodes with Degree 1 = 91 378
No. of Bit Nodes with Degree 2 = 56
No. of Bit Nodes with Degree 3 = 206
No. of Bit Nodes with Degree 4 = 64
No. of Bit Nodes with Degree 5 = 87

From the above results, it is observed that the number of Edges for each Gallager Code's Check Node is equal to four. And it is observed that the IRRGC CW codes (1 & 2) have a Tanner Graph consisting of 91 Bit Nodes with Degree 1 and also exhibit the worst BER performance for all three PMC applications. IRRGC CW 3 code's Tanner Graph consists of 109 Bit Nodes with Degree 4 while IRRGC CW 1 code's Tanner Graphs consists of 101 Bit Nodes with Degree 4. We have decided that the IRRGC CW 3 exhibits the best BER performance as compared to the other 3 IRRGC CW codes. It is claimed in reference

**[3]** that LDPC code's bit nodes with small degrees gather less information from their adjacent check nodes than bit nodes with large degrees (leads to decrease BER performance for a particular LDPC code).

This approach may help us here in the attempt to explain the Gallager Codes' BER Performance ranking.

Thus, using

**T1 V2** capabilities for simulating Gallager Codes, Coded Modulated PMC Signaling, and SPA Decoding, one may be able to investigate the BER performance of these complex Coding structures.

**T1 Professional (T1 V2) now offers the LDPC Code (Gallager, Array, and Repeat-Accumulate) construction and LDPC Channel Coding and LDPC Channel Decoding (Iterative; based on the 'Symbol-by-Symbol' MAP Belief Propagation algorithm) for Parallel MultiChannel (PMC) features to the User.** The User can choose the simulated Signaling Channel as Additive White Gaussian Noise (AWGN) PMC with AWGN, Crosstalk (XTALK) PMC, or Discrete MultiTone (DMT) Modulation PMC with AWGN. Further, the user can choose the simulated PMC to possess a NonDistorting, UnRestricted Bandwidth or a Distorting, Restricted Bandwidth.

An important note to be recognized is that the DMT Modulation PMC is also known as Orthogonal frequency-division Multiplexing (OFDM).

**T1 V2'**s OFDM implementation is FFT-Based.

Also, it is important to realize that New Radio (NR), a Fifth-Generation (5G) Telecommunications Technologies, has been proposed to use LDPC Channel Codes

**[4] **& Cyclic Prefix (CP) OFDM (FFT-based)-based waveforms.

**T1 Professional** will provide the User the introductory opportunity to study the complexity of BER performance of the Low-Density Parity-Check Coded M-ary Signal over an OFDM (FFT-based) MultiCarrier/MultiChannel (with CP for Distorting, Restricted Bandwidth PMC or No CP for a NonDistorting, UnRestricted Bandwidth PMC) and Soft-Decision Decoding using the Sum-Product Algorithm.

In conclusion,

__the User via __**T1 V2** can get experience with the Generation of LDPC codes and the Sum-Product and Bit Flipping algorithms as applied to Iterative Decoding in simulated digital communication systems for Spacecraft and Mobile Communications and Digital Storage Systems LDPC Coding applications.**References:**[

**1]** Robert G. Gallager, "Low-Density Parity-Check Codes,"

*IRE Transactions on Information Theory*, Vol. IT-8, pp. 21-28, January 1962.

**[2]** Robert G. Gallager,

*Low-Density Parity-Check Codes*, Number 21 of the M.I.T. Press Research Monographs, M.I.T. Press, Cambridge, Massachusetts, 1963.

**[3]** Daniel J. Costello, Jr., "An Introduction to Low-Density Parity Check Codes," https://my.ece.utah.edu/~rchen/courses/Costello-3.pdf, pp. 64-67, August 10, 2009.

**[4]** Tom Richardson and Shrinivas Kudekar,"Design of Low-Density Parity Check Codes for 5G New Radio," IEEE Communications Magazine, pp. 28-34, March 2018.

**Figure 1.** Bit Error Probability for UnCoded, Regular, and Irregular (Column Weight
Distribution) Gallager Coded Signaling over a Discrete-Time Waveform Additive White
Gaussian Noise (AWGN) Parallel MultiChannel with AWGN:

Equal probable i.i.d. Source for 10,000,032, 1,000,064, 1,000,062, 1,000,062,
1,000,062 and 1,000,062 Information (Info) Bits for UnCoded; N = 504, j = 3, k = 4
Regular Gallager Coded; and N = 504, N = 504, N = 504, N = 504 Irregular (Column
Weight Distrb) Gallager Coded Signaling respectively over a Discrete-Time Waveform
(DTW) AWGN PMC;

N = 504, j = 3, k = 4, L = 128, Rate = 0.253968 Regular Gallager Code (RGC)
(T1 V2 Computer-generated);

N = 504, {j-1,j = 3,j+1}, k = 4, L = 126, Rate = 0.250000 Irregular Gallager Code
(IRRGC) (T1 V2 Computer-generated);
N = 504, {j-2,j-1,j = 3,j+1,j+2}, k = 4, L = 126, Rate = 0.250000 IRRGC (T1 V2
Computer-generated);
N = 504, {j-1,j = 3,j+1}, k = 4, L = 126, Rate = 0.250000 IRRGC (T1 V2
Computer-generated);
N = 504, {j-2,j-1,j = 3,j+1,j+2}, k = 4, L = 126, Rate = 0.250000 IRRGC (T1 V2
Computer-generated);

For each simulated P_{b} value, E_{b}/N_{0} = E_{b}/N_{0}^{(1)} = E_{b}/N_{0}^{(2)} = … = E_{b}/N_{0}^{(K)}, for 1
through K Signaling Schemes;

Each UnCoded or Gallager Coded DTW AWGN PMC subchannel consists of half-cosine
orthonormal baseband shaping pulse, 8 symbols per symbol period, and half-cosine
matched filter demodulator front-end;

These DTW subchannels possess a NonDistorting, UnRestricted Bandwidth; &

Sum-Product Algorithm Iterative Decoder using Model 2 (Check Messages then Bit
Messages Iteration Processing), Theoretical SPA Implementation Type, and Maximum
Number of Iterations per Block (Imax) = 50.

**Figure 2.** Bit Error Probability for UnCoded, Regular, and Irregular (Column Weight
Distribution) Gallager Coded Signaling over a Discrete-Time Discrete MultiTone (DMT)
Modulation Parallel MultiChannel Type 0 with Additive White Gaussian Noise (AWGN):

Equal probable i.i.d. Source for 10,000,032, 1,000,064, 1,000,062, 1,000,062,
1,000,062 and 1,000,062 Information (Info) Bits for UnCoded; N = 504, j = 3, k = 4
Regular Gallager Coded; and N = 504; N = 504, N = 504, N = 504 Irregular (Column
Weight Distrb) Gallager Coded Signaling respectively over a Discrete-Time (DT) DMT
Modulation PMC Type 0;

N = 504, j = 3, k = 4, L = 128, Rate = 0.253968 Regular Gallager Code (RGC) (T1 V2
Computer-generated);

N = 504, {j-1,j = 3,j+1}, k = 4, L = 126, Rate = 0.250000 Irregular Gallager Code
(IRRGC) (T1 V2 Computer-generated);
N = 504, {j-2,j-1,j = 3,j+1,j+2}, k = 4, L = 126, Rate = 0.250000 IRRGC (T1 V2
Computer-generated);
N = 504, {j-1,j = 3,j+1}, k = 4, L = 126, Rate = 0.250000 IRRGC (T1 V2
Computer-generated);
N = 504, {j-2,j-1,j = 4,j+1,j+2}, k = 4, L = 126, Rate = 0.250000 IRRGC (T1 V2
Computer-generated);

For each simulated Pb value, E_{b}/N_{0} = E_{b}/N_{0}^{(1)} = E_{b}/N_{0}^{(2)} = … = E_{b}/N_{0}^{(K)}, for 1
through K Signaling Schemes;

These DT DMT Modulation PMC Type 0 channels possess a NonDistorting, UnRestricted
Bandwidth; &

Sum-Product Algorithm Iterative Decoder using Model 2 (Check Messages then Bit
Messages Iteration Processing), Theoretical SPA Implementation Type, and Maximum
Number of Iterations per Block (Imax) = 50.

**Figure 3.** Bit Error Probability for UnCoded, Regular, and Irregular (Column Weight
Distribution) Gallager Coded Signaling over a Discrete-Time Discrete MultiTone (DMT)
Modulation Parallel MultiChannel Type 1 with Additive White Gaussian Noise (AWGN):

Equal probable i.i.d. Source for 10,000,032, 1,000,064, 1,000,062, 1,000,062,
1,000,062 and 1,000,062 Information (Info) Bits for UnCoded; N = 504, j = 3, k = 4
Regular Gallager Coded; and N = 504; N = 504, N = 504, N = 504 Irregular (Column
Weight Distrb) Gallager Coded Signaling respectively over a Discrete-Time (DT) DMT
Modulation PMC Type 1;

N = 504, j = 3, k = 4, L = 128, Rate = 0.253968 Regular Gallager Code (RGC) (T1 V2
Computer-generated);

N = 504, {j-1,j = 3,j+1}, k = 4, L = 126, Rate = 0.250000 Irregular Gallager Code
(IRRGC) (T1 V2 Computer-generated);
N = 504, {j-2,j-1,j = 3,j+1,j+2}, k = 4, L = 126, Rate = 0.250000 IRRGC (T1 V2
Computer-generated);
N = 504, {j-1,j =3,j+1}, k = 4, L = 126, Rate = 0.250000 IRRGC (T1 V2
Computer-generated);
N = 504, {j-2,j-1,j = 3,j+1,j+2}, k = 4, L = 126, Rate = 0.250000 IRRGC (T1 V2
Computer-generated);

For each simulated P_{b} value, E_{b}/N_{0} = E_{b}/N_{0}^{(1)} = E_{b}/N_{0}^{(2)} = … = E_{b}/N_{0}^{(K)}, for 1
through K Signaling Schemes;

These DT DMT Modulation PMC Type 1 channels possess a NonDistorting, UnRestricted
Bandwidth; &

Sum-Product Algorithm Iterative Decoder using Model 2 (Check Messages then Bit
Messages Iteration Processing), Theoretical SPA Implementation Type, and Maximum
Number of Iterations per Block (Imax) = 50.

BUY T1 Version 2 (ADVDCSMT1DCSS Professional software system tool)NOW.