⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bpsk_awgn.m

📁 convolution coding program using viterabi algorithm
💻 M
字号:
function data_dec = bpsk_awgn(data_pun, hard_soft, snr)
%bpsk modulation, awgn and 3 bit soft decision block
%data_pun is the data after puncturing
l = length(data_pun);
if hard_soft == 0 %hard decision
for i = 1 : l
if data_pun(i) == 0
temp1(i) = -1;
else temp1(i) = 1;
end
end
temp2 = awgn(temp1, snr, 0, 1234);
for i = 1 : l
if temp2(i) <= 0
data_dec(i) = 0 ;
else data_dec(i) = 1;
end
end
elseif hard_soft == 1 % 3 bit soft decision
for i = 1 : l
if data_pun(i) == 0
temp1(i) = -1;
else temp1(i) = 1;
end
end
temp2 = awgn(temp1, snr, 0);
for i = 1 : l
if temp2(i) <= -0.8571
data_dec(i) = 0;
elseif temp2(i) <= -0.5714
data_dec(i) = 1;
elseif temp2(i) <= -0.2857
data_dec(i) = 2;
elseif temp2(i) <= 0
data_dec(i) = 3;
elseif temp2(i) <= 0.2857
data_dec(i) = 4;
elseif temp2(i) <= 0.5714
data_dec(i) = 5;
elseif temp2(i) <= 0.8571
data_dec(i) = 6;
elseif temp2(i) > 0.8571
data_dec(i) = 7;
end
end
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -