An Improved Low-Density Parity-Check Decoder and Its Field-Programmable Fate Array Implementation
Abstract
:1. Introduction
2. LDPC Code Structure and Decoding Algorithm
2.1. LDPC Decoding Algorithm
2.2. Structure in the IEEE 802.16e Standard
3. Improved Decoding Algorithm
3.1. Quantization-Based Correction Factors
3.2. TNMS Decoding Algorithm
4. Improved LDPC Decoder Hardware Design and Implementation
4.1. Control Module and Overall Architecture
4.2. Data Storage Section
4.3. Check Node Information Processing Module
4.4. Variable Node Information Processing Module and Decision Module
4.5. Verification Module
4.6. Comparison before and after Improvement
5. Testing and Validation
6. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Gallager, R.G. Loiv-Density Parity-Check Codes. Inf. Theory IRE Trans. 1962, 8, 21–28. [Google Scholar] [CrossRef]
- MacKay, D.J.; Neal, R.M. Near Shannon limit performance of low density parity check codes. Electron. Lett. 1996, 33, 457–458. [Google Scholar] [CrossRef]
- Davey, M.C. Error-Correction using Low Density Parity Check Codes. Ph.D. Thesis, University of Cambridge, Cambridge, UK, 1999. [Google Scholar]
- Davey, M.C.; Mackay, D. Low-density parity check codes over GF(q). Commun. Lett. IEEE 1998, 2, 165–167. [Google Scholar] [CrossRef]
- Richardson, T.J.; Urbanke, R.L. The Capacity of Low-Density Parity-Check Codes Under Message-Passing Decoding. IEEE Trans. Inf. Theory 2001, 47, 599–618. [Google Scholar] [CrossRef]
- Kschischang, F.R.; Frey, B.J.; Loeliger, H.A. Factor graphs and the sum-product algorithm. IEEE Trans. Inf. Theory 2001, 47, 498–519. [Google Scholar] [CrossRef]
- Eleftheriou, E.; Mittelholzer, T.; Dholakia, A. Reduced-complexity decoding algorithm for low-density parity-check codes. Electron. Lett. 2001, 37, 102–104. [Google Scholar] [CrossRef]
- Zhou, W.; Lentmaier, M. Generalized Two-Magnitude Check Node Updating with Self Correction for 5G LDPC Codes Decoding. In Proceedings of the 12th International ITG Conference on Systems, Communications and Coding, Rostock, Germany, 11–14 February 2019. [Google Scholar] [CrossRef]
- Cui, H.; Ghaffari, F.; Le, K.; Declercq, D.; Lin, J.; Wang, Z. Design of High-Performance and Area-Efficient Decoder for 5G LDPC Codes. IEEE Trans. Circuits Syst. I Regul. Pap. 2021, 68, 879–891. [Google Scholar] [CrossRef]
- Wu, X.; Song, Y.; Jiang, M.; Zhao, C. Adaptive-Normalized/Offset Min-Sum Algorithm. IEEE Commun. Lett. 2010, 14, 667–669. [Google Scholar] [CrossRef]
- Le Trung, K.; Ghaffari, F.; Declercq, D. An Adaptation of Min-Sum Decoder for 5G Low-Density Parity-Check Codes. In Proceedings of the 2019 IEEE International Symposium on Circuits and Systems (ISCAS), Sapporo, Japan, 26–29 May 2019. [Google Scholar] [CrossRef]
- Savin, V. Self-Corrected Min-Sum decoding of LDPC codes. In Proceedings of the 2008 IEEE International Symposium on Information Theory, Toronto, ON, Canada, 6–11 July 2008. [Google Scholar] [CrossRef]
- Ren, Y.; Harb, H.; Shen, Y.; Balatsoukas-Stimming, A.; Burg, A. A Generalized Adjusted Min-Sum Decoder for 5G LDPC Codes: Algorithm and Implementation. IEEE Trans. Circuits Syst. I Regul. Pap. 2024, 71, 2911–2924. [Google Scholar] [CrossRef]
- Marchand, C.; Boutillon, E. LDPC decoder architecture for DVB-S2 and DVB-S2X standards. In Proceedings of the 2015 IEEE Workshop on Signal Processing Systems (SiPS), Hangzhou, China, 14–16 October 2015. [Google Scholar] [CrossRef]
- Degardin, V.; Lienard, M.; Zeddam, A.; Gauthier, F.; Degauquel, P. Classification and characterization of impulsive noise on indoor powerline used for data communications. IEEE Trans. Consum. Electron. 2002, 48, 913–918. [Google Scholar] [CrossRef]
- Lu, Q.; Sham, C.W.; Lau, F.C. Rapid prototyping of multi-mode QC-LDPC decoder for 802.11n/ac standard. In Proceedings of the 2016 21st Asia and South Pacific Design Automation Conference (ASP-DAC), Macao, China, 25–28 January 2016. [Google Scholar] [CrossRef]
Name | Symbol Meanings |
---|---|
Sequence of information waiting to be decoded | |
Variable nodes | |
Check nodes | |
Edge information passed from variable node to check node at the -th iteration | |
Edge information passed from check node to variable node at the -th iteration | |
Set of all variable nodes connected to check node j | |
Set of all check nodes connected to variable node i | |
Set of all variable nodes connected to check node j, excluding variable node i | |
Set of all check nodes connected to variable node i, excluding check node j |
Optimal Value for NMS Algorithm | Number of Addition and Shift Operations Required per Iteration for NMS with a Given Value | Number of Addition and Shift Operations Required per Iteration for TNMS with a Given Value | Difference in the Number of Addition and Shift Operations between the Two Algorithms | |||
---|---|---|---|---|---|---|
0.7 | 6m | 8m | 4n | 4n + (n + 2m)/3 | 6m − 4n | (22m − 13n)/3 |
0.71 | 6m | 8m | 4n | 4n + (n + 2m)/3 | 6m − 4n | (22m − 13n)/3 |
0.72 | 6m | 8m | 3n | 3n + (n + 2m)/3 | 6m − 3n | (22m − 10n)/3 |
0.73 | 8m | 10m | 2n | 2n + (n + 2m)/3 | 8m − 2n | (28m − 7n)/3 |
0.74 | 8m | 10m | 3n | 3n + (n + 2m)/3 | 8m − 3n | (28m − 10n)/3 |
0.75 | 2m | 4m | 2n | 2n + (n + 2m)/3 | 2m − 2n | (10m − 7n)/3 |
0.76 | 2m | 4m | 2n | 2n + (n + 2m)/3 | 2m − 2n | (10m − 7n)/3 |
0.77 | 4m | 6m | 3n | 3n + (n + 2m)/3 | 4m − 3n | (16m − 10n)/3 |
0.78 | 4m | 6m | 2n | 2n + (n + 2m)/3 | 4m − 2n | (16m − 7n)/3 |
0.79 | 6m | 8m | 2n | 2n + (n + 2m)/3 | 6m − 2n | (22m − 7n)/3 |
0.8 | 6m | 8m | n | n + (n + 2m)/3 | 6m − n | (22m − 4n)/3 |
0.81 | 4m | 6m | 4n | 4n + (n + 2m)/3 | 4m − 4n | (16m − 13n)/3 |
0.82 | 4m | 6m | 3n | 3n + (n + 2m)/3 | 4m − 3n | (16m − 10n)/3 |
0.83 | 6m | 8m | 3n | 3n + (n + 2m)/3 | 6m − 3n | (16m − 10n)/3 |
0.84 | 6m | 8m | 2n | 2n + (n + 2m)/3 | 6m − 2n | (22m − 7n)/3 |
0.85 | 6m | 8m | 2n | 2n + (n + 2m)/3 | 6m − 2n | (22m − 7n)/3 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Wang, H.-Y.; Wang, Z.-X.; Shang, S. An Improved Low-Density Parity-Check Decoder and Its Field-Programmable Fate Array Implementation. Appl. Sci. 2024, 14, 5162. https://doi.org/10.3390/app14125162
Wang H-Y, Wang Z-X, Shang S. An Improved Low-Density Parity-Check Decoder and Its Field-Programmable Fate Array Implementation. Applied Sciences. 2024; 14(12):5162. https://doi.org/10.3390/app14125162
Chicago/Turabian StyleWang, Hao-Yu, Zhong-Xun Wang, and Shuo Shang. 2024. "An Improved Low-Density Parity-Check Decoder and Its Field-Programmable Fate Array Implementation" Applied Sciences 14, no. 12: 5162. https://doi.org/10.3390/app14125162
APA StyleWang, H. -Y., Wang, Z. -X., & Shang, S. (2024). An Improved Low-Density Parity-Check Decoder and Its Field-Programmable Fate Array Implementation. Applied Sciences, 14(12), 5162. https://doi.org/10.3390/app14125162