簡體   English   中英

在 MATLAB 中模擬 LDPC 和 QAM

[英]Simulate LDPC and QAM in MATLAB

我想學習LDPC,我想模擬一個程序。 該程序將在隨機生成的 1x32000 大小的二進制數組上使用 LDPC,然后使用 16-QAM 進行調制,在 SNR=20dB 時添加噪聲,對 16-QAM 進行解調,最后使用 LDPC 對其進行解碼。 當我運行程序並檢查它的 BER 時,我得到了 %90 左右的錯誤,這絕對是不正確的。 你能幫助我嗎?

clear all
clc
M = 16;
SNR = 20;

ldpcEncoder = comm.LDPCEncoder(dvbs2ldpc(1/2));
ldpcDecoder = comm.LDPCDecoder(dvbs2ldpc(1/2));

data = randi([0 1],32400,1);
newData = ldpcEncoder(data);

a = qammod(newData,M,'InputType','bit');

b = awgn(a,SNR,'measured');

c = qamdemod(b,M,'OutputType','bit');

result = ldpcDecoder(c);
error = biterr(data,result)/length(data)

LDPC 解碼器 object 期望輸入帶有“軟”位(對數似然比),而您輸入的是“硬”單極位。 所以,換行

c = qamdemod(b,M,'OutputType','bit');

經過

c = qamdemod(b,M,'OutputType','llr');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM