✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
更多Matlab仿真内容点击👇
⛄ 内容介绍
预留子载波法(Tone Reservation)是一种用于降低OFDM系统中峰均比(PAPR)的技术。以下是基于MATLAB实现预留子载波法以降低PAPR的基本骤:
-
生成OFDM信号:使用MATLAB生成包含待传输数据的原始OFDM信号。选择合适的子载波数量、循环前缀长度、调制方式等参数。
-
分配保留子载波:从OFDM系统中选择一部分子载波作为保留子载波。这些子载波将用于在发送端预留信号以降低PAPR。
-
为保留子载波生成预留信号:为保留子载波生成与它们所处频域位置相关联的预留信号。这可以通过编、制或其他信号处理技术实现。
-
将预留信号插入到OFDM信号中:将预留信号插入到原始OFDM信号中的相应保留子载波位置上。确保插入的预留信号与原始数据的其他子载波不发生冲突。
-
PAPR计算和比较:计算修改后的OFDM信号的PAPR,并将其与未修改的原始OFDM信号进行比较。这可以通过计算峰值功率和平均功率之比等方式得到。
-
重复步骤2到5代,进一步优化预留子载波的选择和预留信号的生成,以降低OFDM信号的PAPR。
需要注意的是,实现预留子载波法降低PAPR的具体细节和优化方法可能因系统需求和而有所不同。此外,在实际应用中,还需要处理保留子载波的干扰、峰值功率限制等问题,并与其他PAPR降低技术结合使用,以获得更好的性能和效果。
⛄ 部分代码
clear;
clc;
close all
carr=1024; %子载波个数
sym_c=10; %每个子载波含有的OFDM符号数
bit_sym=2; %每个符号含有的比特数,QPSK调制
IFFT_n=256; %IFFT点数
r=1/10; %保护间隔和OFDM数据的比例;
%产生信号
sum=carr*sym_c*bit_sym;
colume=sum/(2*carr);
signal=rand(1,sum)>0.5; %初始信号
%QPSK调制,QPSK_sig里面存放的是调制后的信号,数目sumQ
sumQ=sum/2;%OFDM符号总数
imag=sqrt(-1); % 虚部 j
QPSK=[-1+imag,-1-imag,1+imag,1-imag]; %创建QPSK 映射表
SIGNAL=zeros(1,sumQ); %计算并存放调制前的十进制数据(将二进制转为十进制数据,第20行)
⛄ 运行结果
⛄ 参考文献
[1] 赵旦峰,陶磊岩,杨泽亮,叶建超.限幅子载波预留法降低短波宽带系统PAPR[J].现代电子技术, 2008, 31(23):3.DOI:10.3969/j.issn.1004-373X.2008.23.002.
[2] 韩东升,杨维,刘薇.基于最大似然估计降低OFDM系统峰均功率比的子载波预留算法[J].高技术通讯, 2014(4):6.DOI:10.3772/j.issn.1002-0470.2014.04.005.
[3] 庄陵翁海涛王光宇.一种基于预留子载波的CA-FBMC系统PAPR抑制算法[J].重庆邮电大学学报(自然科学版), 2016, 028(005):713-720.