OFDM系统PAPR算法的MATLAB仿真,对比SLM,PTS以及CAF,对比不同傅里叶变换长度

举报
简简单单做算法 发表于 2024/11/20 21:14:30 2024/11/20
【摘要】 1.算法运行效果图预览(完整程序运行后无水印) 2.算法运行软件版本matlab2022a 3.部分核心程序(完整版代码包含详细中文注释和操作步骤视频)for jj=1:Nbits Index(1,:) = floor(length(MAP_qpsk)*rand(1,Lfft))+1; % 生成第一个符号的随机索引 Index(2:N,:) = floor(length(Ph...

1.算法运行效果图预览

(完整程序运行后无水印)

1.jpeg

2.jpeg

3.jpeg

 

2.算法运行软件版本

matlab2022a

 

3.部分核心程序

(完整版代码包含详细中文注释和操作步骤视频)

for jj=1:Nbits
    Index(1,:)   = floor(length(MAP_qpsk)*rand(1,Lfft))+1; % 生成第一个符号的随机索引
    Index(2:N,:) = floor(length(Phases)*rand(N-1,Lfft))+1; % 生成其余符号的随机索引
    
    X(1,:)       = MAP_qpsk(Index(1,:)); % 原始频域信号
    Phase_Rot    = Phases(Index(2:N,:)); % 相位旋转
    X(2:N,:)     = repmat(X(1,:),N-1,1).*Phase_Rot; % 相位旋转后的频域信号
    
    x            = ifft(X,[],2); % 时域信号
    Pow1         = abs(x.^2); % 信号功率
    Pow2         = max(Pow1,[],2); % 峰值功率
    Pow3         = mean(Pow1,2);   % 平均功率
    
    PAPR_temp    = 10*log10(Pow2./Pow3); % 计算PAPR
    papr0(jj)    = PAPR_temp(1); % 存储原始PAPR
    papr_slm(1,jj)  = min(PAPR_temp(1:end)); % 存储SLM N=4的情况
end
 
% 计算累积分布函数
[cdf1, PAPR1] = ecdf(papr0); % 原始PAPR的CDF
[cdf2, PAPR2] = ecdf(papr_slm(1,:)); % SLM N=2的PAPR CDF
174

4.算法理论概述

       在正交频分复用(Orthogonal Frequency Division Multiplexing, OFDM)系统中,高峰均功率比(Peak-to-Average Power Ratio, PAPR)是一个关键问题,因为它会导致功率放大器非线性失真、增加发射机功耗等问题。为了降低PAPR,研究人员提出了多种算法,其中包括选择映射(Selected Mapping, SLM)、相位截断星座图(Partial Transmit Sequences, PTS)等技术。

 

4.1、选择映射(SLM

        选择映射(SLM)算法通过生成多个相位旋转的子载波数据,并选择具有最低PAPR的信号进行传输。假设原始信号为x,则生成N个相位旋转的信号xi​,其中 i=1,2,…,N

 

4.png

 

4.2 相位截断星座图(PTS

        PTS方法通过对部分子载波施加相位旋转来降低PAPR。假设将 K 个子载波分为 V 个组,每组内的子载波可以独立地施加相位旋转。

 

5.png

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。