| Communications Blockset™ | ![]() |
Decode binary low-density parity-check code specified by parity-check matrix
Block sublibrary of Error Detection and Correction
This block implements the message-passing algorithm for decoding low-density parity-check (LDPC) codes, which are linear error control codes with sparse parity-check matrices and long block lengths that can attain performance near the Shannon limit.
The LDPC Decoder block is designed to:
Decode generic binary LDPC codes where no patterns in the parity-check matrix are assumed.
Execute a user-specified number of iterations or run until all parity-checks are satisfied.
Output hard decisions or soft decisions (log-likelihood ratios) for decoded bits.
The LDPC Decoder block uses the same algorithm as the fec.ldpcdec Communications Toolbox™ object. See Decoding Algorithm for details.
(n – k) and n are the number of rows and columns, respectively, in the parity-check matrix.
The input must be a frame-based
vector and a real-valued signal
of type double. Each element is the log-likelihood ratio for a received
bit (more likely to be 0 if the log-likelihood ratio is positive).
The first k elements correspond to the information
part of a codeword.
Both the input and the output are discrete-time signals. The
ratio of the output sample time to the input sample time is
if only the information part
is decoded, and 1 if the entire codeword is decoded.
Type commdvbs2 at the command line to see a demo using this block.

This block can accept a sparse matrix with dimension n - k by n (n > k > 0) of real numbers. All nonzero elements must be equal to 1. n and k are only limited by the amount of available memory.
The options are Information part and Whole codeword.
The output is a real-valued signal in the form of a frame-based column vector. It has k elements if the output format is set to Information part, and n elements if set to whole codeword.
The options are Hard decision and Soft decision.
If this is set to Hard decision, the output is decoded bits (of type double or boolean). If set to Soft decision, the output is log-likelihood ratios (of type double).
This parameter appears only when Decision type is set to Hard decision.
The options are boolean and double.
This can be any positive integer.
If checked, the block will determine whether the parity checks are satisfied after each iteration and stop if all are satisfied.
Creates an output port on the block when selected.
Creates an output port on the block when selected.
[1] Gallager, Robert G., Low-Density Parity-Check Codes, Cambridge, MA, MIT Press, 1963.
![]() | Kasami Sequence Generator | LDPC Encoder | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |