Important information

If you are thinking of contacting us, please do not e-mail the author to ask for download instructions, installation guidelines, or the toolbox itself. The code itself is well-documented and the package contains a README.txt file providing the essential information about the software. Note that we will NOT help to debug user-generated code that was not included in the provided software package. If, however, you notice a bug in our code, please be so kind to contact the author.

The software package is supplied "as is", without any accompanying support services, maintenance, or future updates. We make no warranties, explicit or implicit, that the software contained in this package is free of error or that it will meet your requirements for any particular application. It should not be relied on for any purpose where incorrect results could result in loss of property, personal injury, liability or whatsoever. If you do use our software for any such purpose, it is at your own risk. The authors disclaim all liability of any kind, either direct or consequential, resulting from your use of these programs.

Low-density parity-check (LDPC) codes are among the best performing forward error-correction codes known today. Especially for wireless communication systems, quasi-cyclic (QC) LDPC codes have attracted significant attention as their regular parity check matrices facilitate cost-effective and low-power hardware implementations and allow to easily adjust the block lengths and code rates. Therefore, QC-LDPC codes are employed in a large number of recent wireless communication standards, e.g., IEEE 802.16e, DVB-S2, and IEEE 802.11n.

More information on LDPC encoding and decoding, as well as hardware implementations for the IEEE 802.11n wireless LAN standard can be found in the following publications:

C. Roth, A. Cevrero, C. Studer, Y. Leblebici, and A. Burg, "Area, Throughput, and Energy-Efficiency Trade-offs in the VLSI Implementation of LDPC Decoders," Proc. IEEE International Symposium on Circuits and Systems (ISCAS), pp. 1772–1775, May 2011, (invited paper)
C. Roth, P. Meinerzhagen, C. Studer, and A. Burg, "A 15.8 pJ/bit/iter Quasi-Cyclic LDPC Decoder for IEEE 802.11n in 90nm CMOS," Proc. IEEE Asian Solid-State Circuit Conference (A-SSCC), Nov. 2010
C. Studer, "Iterative MIMO Decoding: Algorithm and VLSI Implementation Aspects," Ph.D. dissertation, Department of Information Technology and Electrical Engineering, ETH Zurich, Zurich, Switzerland, Series in Microelectronics, Vol. 202, Hartung-Gorre Verlag Konstanz, July 2009, (ETH medal for doctoral dissertation)
C. Studer, N. Preyss, C. Roth, and A. Burg, "Configurable High-Throughput Decoder Architecture for Quasi-Cyclic LDPC Codes," Proc. 42th Asilomar Conference on Signals, Systems, and Computers, pp. 1137–1142, Oct. 2008, (invited paper)

Package details

The software package contains a simulation enviroment for LDPC encoding and decoding as used in the IEEE 802.11n wireless LAN standard. The code is written in Matlab and consists of a flexible Monte-Carlo simulation environment that can easily be extended for other LDPC codes. The simulator is set up such that you can add your own extensions (e.g., codes, decoding algorithms, channel models, etc.) and supports high-throughput computing using Condor. The code is written by C. Studer, and is available for free trial, non-commercial research or education purposes, and for non-profit organizations. If you plan on using the code or parts thereof for commercial purposes or if you intend to re-distribute the code or parts thereof, you must contact the author. If you are using the code or parts thereof for your scientific work, you must to provide a reference to this website or at least one of the publications listed above.


The package uses Matlab's communications toolbox (only for poly2trellis.m).


If you agree with the conditions and regulations above, you may download the most recent version here. The zip file (1.7MB) contains only Matlab .m files. If you agree with the conditions and regulations above, you may downlod the package here. The zip file (1.7MB) contains only Matlab .m files. Have fun!