Correlative Coding MATLAB CODE
Correlative Coding MATLAB CODE
=============================================================================
clc;
close all;
clear all;
b=randint(1,10000);
a(1)=1;
%precoder output
for i=2:length(b)+1
a(i)=xor(a(i-1),b(i-1));
end
% polar conversion
for l=1:length(a)
if a(l)==1
c(l)=1;
else
c(l)=-1;
end
end
% detection rule
for j=1:length(g)
if g(j)==0
h(j)=1;
else
h(j)=0;
end
end
snr=[2 4 6 8]; % snr values
z1=awgn(h,snr(1)); % adding white gaussian to output at 1st snr values
for k=1:1:length(z1)
if z1(k)>0
x1(k)=1;
else
x1(k)=0;
end
end
br1 = biterr(h,x1); % camparing output to input and calculating number of bits
err2=br2/length(h);
z3=awgn(h,snr(3));
for w=1:1:length(z3)
if z3(w)>0
x3(w)=1;
else
x3(w)=0;
end
end
br3 = biterr(h,x3);
err3=br3/length(h);
z4=awgn(h,snr(4));
for e=1:1:length(z4)
if z4(e)>0
x4(e)=1;
else
x4(e)=0;
end
end
br4 = biterr(h,x4);
err4=br4/length(h);
b=[err1 err2 err3 err4];
xlabel('snr---->');
ylabel('BER');