Why does dvbs2ldpc() generate non-quasi-cyclic matrixes?
3 views (last 30 days)
Show older comments
According to DVB-S2 documention, the LDPC parity-check (pchk) matrixes of this standard are quasi-cyclic.
However, I tried to generate the pchk matrix in Matlab R2022a/b for Mac and R2022b online, and it gives out a weird result:
code
line 1: H = dvbs2ldpc(3/5);
line 2: spy(H)
end of code
The spy(H) function prints the matrix as the picture below. Obviously this is not a quasi-cyclic matrix.
0 Comments
Answers (1)
Tushar
on 21 Mar 2023
Hi,
The dvbs2ldpc() function in MATLAB generates LDPC (Low-Density Parity-Check) codes for DVB-S2 (Digital Video Broadcasting - Satellite - Second Generation) systems. These codes are used for error correction in satellite communications.
The dvbs2ldpc() function generates LDPC codes using a base matrix and a permutation matrix. The base matrix is designed to have a low density of ones, which makes the LDPC codes efficient for error correction. The permutation matrix is used to randomize the structure of the LDPC code.
The reason why the dvbs2ldpc() function generates non-quasi-cyclic matrices is because of the use of the permutation matrix. Quasi-cyclic matrices have a block structure that repeats cyclically along the diagonal, which can make them easier to implement in hardware. However, the use of a permutation matrix breaks the cyclic structure and generates a non-quasi-cyclic LDPC matrix.
Generating non-quasi-cyclic LDPC matrices has several advantages. One advantage is that it allows for a wider range of code rates and block lengths to be generated, which can be useful for different types of satellite communication systems. Another advantage is that it can improve the error-correction performance of the LDPC code, as non-quasi-cyclic codes can have better error-correction capabilities than quasi-cyclic codes.
In summary, the dvbs2ldpc() function generates non-quasi-cyclic LDPC matrices because of the use of a permutation matrix, which allows for greater flexibility in generating LDPC codes with different properties and improved error-correction performance.
Hope it helps!!
0 Comments
See Also
Categories
Find more on Error Detection and Correction in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!