目录

1.算法仿真效果

2.MATLAB核心程序

3.算法涉及理论知识概要

3.1pts

3.2SLM

3.3 Filter

4.完整MATLAB


1.算法仿真效果

matlab2022a仿真结果如下:

2.MATLAB核心程序

.........................................
K = 128;
N = 4;
QPSK_Set  = [1 -1 j -j];
Phase_Set = [1 -1];
MAX_SYMBOLS  = 1e5;
PAPR_Orignal = zeros(1,MAX_SYMBOLS);
PAPR_SLM     = zeros(1,MAX_SYMBOLS);
X     = zeros(N,K);
Index = zeros(N,K);
for nSymbol=1:MAX_SYMBOLSIndex(1,:)   = floor(length(QPSK_Set)*rand(1,K))+1;Index(2:N,:) = floor(length(Phase_Set)*rand(N-1,K))+1;X(1,:) = QPSK_Set(Index(1,:));
......................................................x = ifft(X,[],2);                                                       Signal_Power = abs(x.^2);Peak_Power   = max(Signal_Power,[],2);Mean_Power   = mean(Signal_Power,2);PAPR_temp = 10*log10(Peak_Power./Mean_Power);PAPR_Orignal(nSymbol) = PAPR_temp(1);PAPR_SLM(nSymbol)     = min(PAPR_temp);
end
[cdf1, PAPR1] = ecdf(PAPR_Orignal);
[cdf2, PAPR2] = ecdf(PAPR_SLM);figure;
semilogy(PAPR1,1-cdf1,'-k','LineWidth',1)
hold on
semilogy(PAPR2,1-cdf2,'-b','LineWidth',2)
legend('Orignal','SLM')
xlabel('PAPR0 [dB]');
ylabel('CCDF (Pr[PAPR>PAPR0])');
grid on
A338

3.算法涉及理论知识概要

正交频分复用(OFDM)是长期演进的4G蜂窝网络标准中采用的调制技术。但是,OFDM具有较强的带外辐射和较高的旁瓣,对频谱的感知精度低下。未来的无线标准需要为下一代移动系统提出具有高传输数据速率和高频谱利用率的新调制技术。带有偏移正交幅度调制(OQAM)的滤波器组多载波调制(FBMC)作为未来第五代移动通信标准中的主要候选,已经引起了人们的关注。

FBMC-OQAM是一种多载波技术,通过基于快速傅里叶逆变换/快速傅里叶变换的滤波器组和OQAM符号,能够以两倍FBMC/QAM的符号速率将实数符号载入子载波,因此具有较高的频谱效率。利用较小旁瓣的滤波器减小了载波频移,缓解了其对OFDM传输的影响,可以使频谱带外泄露特别低。因为FBMC-OQAM系统中没有插入循环前缀,所以具有高传输数据速率和高频谱利用率。然而,FBMC-OQAM与OFDM都是多载波调制技术,在符号传输过程中,由于多个子信道传输信号的叠加会产生较大的峰值,从而引起较高的峰均比(PAPR)。高PAPR导致非线性功率放大器中FBMC-OQAM性能的严重劣化,所以降低FBMC-OQAM系统的PAPR是下一代通信技术的一个主要问题。一般地,PAPR降低技术可以大致分为两大类——有失真技术和无失真技术。有失真技术包含压扩法技术(星座扩展法)和限幅类技术(消峰法),无失真技术包含编码类技术(分组编码)和概率类技术。概率类的解决方案如选择性映射(SLM)和部分传输序列(PTS)方案,主要是降低信号中高峰值出现的概率,而不是减少最大信号的幅度[4]。它们具有相对较低的复杂度,在边带信息恢复时不会影响误码率,因而更具优势。

3.1pts

部分传输序列(Partial Transmit Sequence , PTS)由于其不受载波数量限制,并且能够有效的,无失真的降低OFDM信号峰均比,而受到广泛关注。部分传输序列算法(PTS)最初是由S.H.Muller和J.B.Huber于1997年提出。PTS算法的核心思想是将具有N个符号的输入序列按照一定的分割方式分割成V个子数据块,并且保持每个子数据块仍含有N个符号。然后对V个子数据块进行相位加权与合并处理,选择具有最小PAPR的一组符号进行传输,达到降低OFDM信号PAPR的目的。传统的PTS算法理论比较多,现成的资料也比较多,这里就不多做介绍了,通过仿真,对比PTS和没有PTS下。目前OFDM的PAPR主要算法有信号预畸变,信号扰码,编码三个方向来解决。

在本课题中,我们将在传统PTS算法基础上引入了TR的思路到改进后的PTS算法中,引入的意义为:先预留出若干子载波来加载削峰信号,然后利用优化过的PTS算法对OFDM符号的PAPR进行抑制,之后再利用改进的TR算法对符号的PAPR进行进一步的抑制。整个算法的流程如下所示:

步骤一:加入门限,降低PTS算法的复杂度(但是这样会降低性能)

当满足要求:

算法就停止搜索,这样的话,就降低的算法的复杂度,但是会影响性能。

步骤二:加入限幅的方法

通过这个方法,可以在步骤一的基础上,提高性能,使其在复杂度降低的前提下,保存系统的性能不变。

3.2SLM

     slm算法就是对QAM信号乘以U组相位因子序列,再进行ifft得到 U组ofdm信号,选择papr最小的那一组进行发送。
  因为对于ofdm信号而言,高PAPR出现的概率很小,一般1000个ofdm信号只会有个位数papr过高的值。那SLM方法对同一个QAM信号乘以N组相位后得到U个ofdm信号,从中选择PAPR最小的进行发送,就用概率的方法将高PAPR的ofdm信号滤出在外。

3.3 Filter

    for nIter=1:ITERATE_NUM% Clippingx_tmp = x(Signal_Power>CR*Mean_Power);x_tmp = sqrt(CR*Mean_Power)*x_tmp./abs(x_tmp);x(Signal_Power>CR*Mean_Power) = x_tmp;% FilteringXX = fft(x,[],2);XX(K/2+(1:N-K)) = zeros(1,N-K);x = ifft(XX,[],2); % PAPR ComputeSignal_Power = abs(x.^2);Peak_Power   = max(Signal_Power,[],2);Mean_Power   = mean(Signal_Power,2);PAPR_RCF(nIter,nSymbol) = 10*log10(Peak_Power./Mean_Power);end

4.完整MATLAB

V

PTS,SLM,Filter三种降低PAPR方法的matlab仿真相关推荐

  1. m瑞利信道下对比ZF-SIC,MMSE-SIC,MRC三种均衡算法的误码率matlab仿真

    目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 移动通信系统的性能在很大程度上决定于无线信道的特性.单发单收系统无线信道的特性已经研究得很透彻,针对 ...

  2. OpenCV函数应用:基于二值图像的三种孔洞填充方法记录(附python,C++代码)

    系列文章目录 函数系列: OpenCV函数简记_第一章数字图像的基本概念(邻域,连通,色彩空间) OpenCV函数简记_第二章数字图像的基本操作(图像读写,图像像素获取,图像ROI获取,图像混合,图形 ...

  3. 极低噪声幻像电源如何设计?详细原理图和三种消噪方法拿走不谢

    极低噪声幻像电源如何设计?详细原理图和三种消噪方法拿走不谢 原创 ADI 亚德诺半导体 2022-04-19 11:48 极低噪声幻像电源如何设计?详细原理图和三种消噪方法拿走不谢 Q: 是否可以利用 ...

  4. 三种引流方法案例分析

    第3课课程笔记 课程主题:三种引流方法&案例分析 课程题纲: 第一节:58同城引流方法详解(图文并茂) :宠物引流的第二种方法(资料收集与分享) :第三种最高端的玩法(让客户百分百信任你) 正 ...

  5. 【小白学习keras教程】十、三种Model Selection方法:k-fold cross-validation,GridSearchCV和RandomizedSearchCV

    @Author:Runsen Model Selection是划分训练集和测试集的手段,下面总结了三种Model Selection方法. k-fold cross-validation using ...

  6. Python实现二叉树的三种深度遍历方法!

    python代码实现了二叉树,这次将会实现二叉树的几种遍历方法,来更好的解析二叉树的结构特点.分别是一种广度遍历,和三种深度遍历方法:先序遍历,中序遍历,后序遍历.下面是代码实现: 1.先序遍历 遍历 ...

  7. php调用mysql库_PHP调用三种数据库的方法(1)

    PHP调用三种数据库的方法(1) 更新时间:2006年10月09日 00:00:00   作者: MySQL是一个小巧灵珑的数据库服务器软件,对于中.小型应用系统是非常理想的.除了支持标准的ANSI ...

  8. 实现两数 交换的三种不同编程方法。

    第一种 即常规方法 借助第三变量 int a = 5,b = 3,c; c = a; a = b; b = c; 第二种 不借助第三变量 int a=5,b=3,c; a = a+b;    //(缺 ...

  9. 常用的分隔符有哪三种_掌握这三种调漂方法,你想怎么钓就怎么钓,再也不用求人...

    调漂对于刚学钓鱼的钓友来说是一件非常头痛的事情,每次钓鱼大部分时间都浪费在调漂上,总是感觉调不好,不是灵了就是钝了!那么问题到底出在哪呢?今天就和大家分享三种针对悬坠钓的调漂方法,看懂弄明白了,再也不 ...

最新文章

  1. 查看sqlserver被锁的表以及如何解锁
  2. python中in的底层实现_python中print和input的底层实现
  3. 【转载】 C# 中的Async 和 Await 的用法详解
  4. mysql-5.7.20实用下载、安装和配置方法,以及简单操作
  5. ios 学习札记 细节(三)
  6. 【卷积核设计】Scaling Up Your Kernels to 31x31: Revisiting Large Kernel Design in CNNs
  7. 系统间数据传输,产品经理视角的9千字总结:接口、otter、log4j、SFTP、MQ……
  8. mysql 终端模拟_mysql客户端模拟脏读、幻读和可重复读
  9. python基础课程6(看代码看注释)--pandas
  10. 针对文字加密的简单 JS 加密算法 --进制乱序法改良版
  11. Kotlin — 使用IDEA运行第一个Kotlin程序,打印“Hello World”!
  12. django orm与scrapy集成:
  13. 深入浅出 eBPF|你要了解的 7 个核心问题
  14. Access的BOM开发(2)基础信息
  15. FIT2CLOUD飞致云正式启用CloudExplorer多云管理平台产品品牌
  16. json格式数据集转yolo txt格式
  17. macOS制作Linux启动U盘,如何在Mac OS下用ISO包制作启动U盘
  18. IT技术人,不可有傲气,但须有傲骨
  19. Julia 数学运算和初等函数
  20. Pycharm Debugger - Frames Not Available

热门文章

  1. Mysql出现问题:ERROR 2058: Plugin caching_sha2_passward could not be loaded解决方案
  2. aspose将word转换为pdf[aspose.word.java 18.11]
  3. QQ卡丁车:腾讯自主研发的联网对战赛车游戏
  4. linux和pe修复win10启动项,pe下如何重建win10引导?pe下win10引导修复图文教程
  5. 图片和文字对齐的方法
  6. 央央家政解读:月嫂服务内容和标准
  7. java基础系列(四)UTF-8和GBK编码的区别
  8. w10计算机无法打印,win10电脑无法打印文件怎么办?
  9. PowerDesigner Excel导入信息
  10. 超级计算机 任务提交,超算任务提交系统slurm用法