Implemented a new algorithm for ldpc decoding
Implemented a new algorithm for ldpc decoding.
LDPC decoder algorithm implements iterative message-passing layered decoding. Algorithm involves exchanging the belief information among the variable nodes and check nodes.
Input LLRs "l" provide intrinsic information. Extrinsic information "r" generated in check node is passed to variable nodes.
Belief information is updated iteratively in two steps:
- Variable-to-Check step: Variable nodes transmit their belief information to the connected check nodes.
- Check-to-Variable step: Check nodes process the received information, update it, and send it back to the connected variable nodes.
The offset min-sum algorithm is chosen for its computational efficiency and ease of implementation while maintaining reliable decoding performance.
Note: This patch removes the parity_check, as the CRC check is performed which is mandatory.
BER rates with the new implementation are shown in the table below,
| n | bg | mod_type | rv | Eb/N0 | ber_before | ber_after |
|---|---|---|---|---|---|---|
| 300 | 2 | QPSK | 0 | 1.0 | 0.217548 | 0.019789 |
| 396 | 1 | QPSK | 0 | 1.0 | 0.211515 | 0.027611 |
| 1400 | 2 | QPSK | 0 | 1.0 | 0.279014 | 0.008802 |
| 1848 | 1 | QPSK | 0 | 1.0 | 0.251669 | 0.017381 |
| 4400 | 2 | QPSK | 0 | 1.0 | 0.321063 | 0.002338 |
| 5808 | 1 | QPSK | 0 | 1.0 | 0.253866 | 0.008661 |
| 10400 | 2 | QPSK | 0 | 1.0 | 0.332846 | 0.000411 |
| 13728 | 1 | QPSK | 0 | 1.0 | 0.254120 | 0.004200 |
Merge request reports
Activity
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
- Resolved by Congregate Migrate
Thanks for this merge request. The BER performance looks really good

As well as the comments I've raised, could you expand in the merge request summary with what algorithm you've used, maybe a brief explanation of how it works and some highlights of the changes made?
By Kevin Mooney on 2025-02-20T08:33:32
assigned to @Kevin.Mooney
By Kevin Mooney on 2025-02-19T14:38:33
- Resolved by Congregate Migrate