How to generating LDPC parity-check matrices with arbitrary sizes?
37 ビュー (過去 30 日間)
古いコメントを表示
I want to use comm.LDPCEncoder/comm.LDPCDecoder and i know to use this encoder decoder in Matlab the H matrices should be Systematic (support Systematic codes only) otherwise i will receive this error.
"the last (N-K) columns of the parity-check matrix must be invertible in GF(2)."
I know two methods from MATLAB that will generate parity-check matrices:
H = dvbs2ldpc(r)
h = hammgen(m)
However, these methods are restricted to a certain ratio between rows and columns. I tried some other third-party scripts to generate the matrix, but some of them don't seem to return a valid matrix, since "comm.LDPCDecoder" will fail with the same error.
I used some predefined H matrices of Mackay, but no way.
lent of my code-word is not fix it's about 1000 to 3000 it depend to the situation of my simulation(for example code-word length is equal to 1536 or another case 2048), that's why i should create a spars matrix then use it.
Now how to generate the LDPC parity-check matrices with arbitrary sizes[depend to length of my code-word]?
How to generating LDPC parity-check matrices with arbitrary sizes?
0 件のコメント
回答 (1 件)
David Ding
2017 年 1 月 5 日
Hi Hamid,
I believe you might find the following link useful:
Essentially, you just need to do a bit of pre-processing on the parity check matrix in permuting its columns, such that the last (n-k) columns of the new H is always invertible in F_2. To do this, as the author in the link suggested, you may use:
% Permute H to obtain a systematic code
% This is always possible if H has full rank and if infobits_loc is
% correctly defined
paritybits_loc = setdiff(1:size(H,2),infobits_loc);
H2 = H(:,[infobits_loc paritybits_loc]);
Hope this helps.
David
3 件のコメント
Zeyad Qasem
2020 年 8 月 2 日
Hi Cheng, Have you got the answer of this question?, I'm also stuck in that same issue.
参考
カテゴリ
Help Center および File Exchange で Error Detection and Correction についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!