1.软件版本
matlab2013b
2.部分源码
clc;
close all;
clear all;
warning off;
Frame_Length = 120; %每次仿真数据个数
Error_Num = 100000; %统计误码的个数
EbNo = 0:2:20; %信噪比
Nt = 2; %发送天线
Nr = 2; %接收天线
P = 4; %调制数
tx2 = zeros(Frame_Length, Nt);
r = zeros(Frame_Length, Nr);
H = zeros(Frame_Length, Nt, Nr);
z = zeros(Frame_Length, Nr);
BERs = zeros(1, length(EbNo));
for kk = 1:length(EbNo)
kk
count = 0;
totalNumErr = 0;
SNR = 10^(EbNo(kk)/10);
sigma = 1/(sqrt(SNR)/2);
while(totalNumErr < Error_Num)
kk
totalNumErr
%产生数据
data = randint(Frame_Length,1,P);
%BPSK
tx = pskmod(data,P);
%DSTBC
%G2 = [s1 -s2 ]
% [s2* s1*]
%以中继输出作为D-STBC的输入
s1 = tx(1:Nt:end);
s2 = tx(2:Nt:end);
tx2(1:Nt:end, :) = [s1 -s2 ];
tx2(2:Nt:end, :) = [conj(s2) conj(s1)];
transmit = tx2;
%MIMO信道
H(1, :, :) = (randn(Nt,Nr)+j*randn(Nt,Nr))/sqrt(2);
H = H(ones(Frame_Length,1),:,:);
%信号接收
for i = 1:Nr
rr = size(sum(H(:, :, i).*transmit,2)/(Nt),1);
cc = size(sum(H(:, :, i).*transmit,2)/(Nt),2);
r(:, i) = sum(H(:, :, i).*transmit,2)/(Nt) + sigma*(randn(rr,cc)+sqrt(-1)*randn(rr,cc));
end
%DSTBC接收
%ML
hidx = 1:Nt:length(H);
for i = 1:Nr
z1(:, i) = r(1:Nt:end,i).* conj(H(hidx,1,i)) + conj(r(2:Nt:end,i)).* H(hidx,2,i);
z2(:, i) = -r(1:Nt:end,i).* conj(H(hidx,2,i)) + conj(r(2:Nt:end,i)).* H(hidx,1,i);
end
z(1:Nt:end,:) = z1;
z(2:Nt:end,:) = z2;
Rec_data = pskdemod(sum(z,2),P);
count = count + 1;
totalNumErr = totalNumErr + biterr(Rec_data, data);
end
BERs(kk) = totalNumErr/(2*count*Frame_Length);
end
figure;
semilogy(EbNo,BERs,'r-o');
set(gca,'yscale','log','xlim',[EbNo(1), EbNo(end)],'ylim',[1e-6 1]);
grid on;
save QPSK.mat EbNo BERs
3.仿真结论
协作 MIMO中分布式空时编码技术的研究:
把规则LDPC加入这个协作MIMO的D-STBC里,即是将LDPC码与D-STBC级联,发送端用LDPC编码发送到协作节点,然后协作节点用D-STBC码形式转发到发送端。
把规则LDPC码加入协作MIMO的D-VBLAST(分布式的垂直分层空时码)系统里,做出 ML、ZF-OSIC和 ,RLS-MIMO-DFE三种检测算法误码率的性能比较。
比较LDPC级联D-STBC的协作MIMO系统与LDPC码级联D-VBLAST的协作MIMO系统在ML和Fincke-Pohst MAP算法检测下的误码率性能比较。
比较LDPC级联D-STBC的协作MIMO系统下,接收端检测分别采用ML算法和Fincke-Pohst MAP
[1]肖小潮, 郑宝玉, 许晓荣. 协作MIMO中分布式空时编码技术的研究[J]. 信号处理, 2011, 27(3):6.
[2] Tsai M Y , Yousefi S . Fixed-complexity list-type iterative joint detection and decoding of LDPC-coded V-blast systems[C]// Symposium on Communications. IEEE, 2008.
[3]雷维嘉, 谢显中, 李广军. LDPC编码与空时编码相结合的编码协作方法[J]. 电子科技大学学报, 2009, 38(001):21-24.A01-50