首页 > 其他分享 >【分布式空时编码+LDPC】协作MIMO中分布式空时编码和LDPC编译码技术的仿真

【分布式空时编码+LDPC】协作MIMO中分布式空时编码和LDPC编译码技术的仿真

时间:2022-11-09 21:12:36浏览次数:46  
标签:end Length 协作 LDPC 空时 Nt MIMO 分布式

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

 



标签:end,Length,协作,LDPC,空时,Nt,MIMO,分布式
From: https://www.cnblogs.com/matlabfpga/p/16875179.html

相关文章

  • ZooKeeper : Curator框架之分布式锁InterProcessSemaphoreMutex
    InterProcessSemaphoreMutex​​InterProcessSemaphoreMutex​​类的源码注释:ANONre-entrantmutexthatworksacrossJVMs.UsesZookeepertoholdthelock.Allproc......
  • ZooKeeper系列:实现分布式锁
    锁是为了在多线程的场景中保证数据安全而增加的一种手段,Java中常用的有CountdownLatch,ReentrantLock等单应用中的锁,在现在处处都是分布式的场景需求下就不能满足了,所以就出......
  • 使用github管理iOS分布式项目开发
    使用github管理iOS分布式项目开发 在我们iOS项目开发过程中,我们的团队成员都是分散的、分布式,这个项目管理带来了挑战。Git是一个能够进行版本管理的软件,它是cvs和svn的未......
  • 分布式事务
    分布式事务本地事务本地事务存在问题1.远程服务假失败:远程服务其实成功了,由于网络故障等没有返回。导致:订单回滚,库存却扣减2.远程服务执行完成,下面的其他方法出现问......
  • 5.分布式集群
    6.3.1 单节点集群我们在包含一个空节点的集群内创建名为users的索引,为了演示目的,我们将分配3个主分片和一份副本(索引分为三个主分片,每个主分片拥有一个副本分片),整个集......
  • Minio分布式文件存储
    packagewangbiao.config.minio;importcom.fasterxml.jackson.core.JsonProcessingException;importio.minio.*;importio.minio.errors.*;importio.minio.messag......
  • 分布式系统中的 CAP
    本文转自:纯洁的微笑公众号在计算机领域,如果是初入行就算了,如果是多年的老码农还不懂CAP定理,那就真的说不过去了。CAP可是每一名技术架构师都必须掌握的基础原则啊。现......
  • <4> 分布式实现
    1"""2配置redis3安装pip3installscrapy-redis4修改scrapy项目(先正常实现scrapy爬虫):5"""67#----1导入分布式爬虫类8fromsc......
  • 【分布式技术专题】「架构实践于案例分析」盘点分布式服务的(无状态\有状态)认证实现方
    ⽆状态vs有状态有状态、⽆状态是什么有状态:服务器端需要保存请求的相关信息,每个请求可以默认地使⽤以前的请求信息⽆状态:服务器端不记录请求的相关信息,服务器处理的内容完......
  • 初识微服务(技术栈、单体、分布式架构)、SpringCloud
    (目录)微服务技术栈从单体架构过度到微服务架构,需要一系列中间技术支撑,其中重要的部分包括:注册中心:Eureka、Zookeeper、Nacos服务网关:Zuul、Gateway微服务远程调......