OFDM——PAPR减小(二)

简介: OFDM——PAPR减小(二)

OFDM——PAPR减小(一)https://developer.aliyun.com/article/1473988

②、仿真结果

总的来说,当 N NN 增大时,PAPR 变得更加明显

从图中可以看出,x [ n ] x[n]x[n] 的实部和虚部服从高斯分布,而 ∣ x [ n ] ∣ |x[n]|x[n]∣ x [ t ] ∣ |x[t]|x[t] 服从瑞利分布

对于具有 N 个子载波的OFDM符号,当每个子载波分量具有相同的相位,且恰好出现最大幅度时, OFDM 信号具有最大功率。最大功率随着 N 的增大而增大,而且出现最大功率的概率随着 N 的增大而降低。

4、Chu 序列和 IEEE802.16e 前导的 PAPR

①、MATLAB 源码

PAPR_of_Chu.m

% PAPR_of_Chu.m
% Plot Fig. 7.10(a)
%MIMO-OFDM Wireless Communications with MATLAB㈢   Yong Soo Cho, Jaekwon Kim, Won Young Yang and Chung G. Kang
%2010 John Wiley & Sons (Asia) Pte Ltd
clear, clf
N=16; L=4; i=[0:N-1]; 
k = 3; X = exp(j*k*pi/N*(i.*i));
[x,time] = IFFT_oversampling(X,N);
PAPRdB = PAPR(x);
[x_os,time_os] = IFFT_oversampling(X,N,L); %x_os=x_os*L;
PAPRdB_os = PAPR(x_os);
subplot(221), plot(x,'o');
hold on, plot(x_os,'k*');
legend('L=1','L=4');
axis([-0.4 0.4 -0.4 0.4]), axis('equal');
plot(0.25*exp(j*pi/180*[0:359])); % circle with radius 0.25
subplot(222), plot(time,abs(x),'o', time_os,abs(x_os),'k:*');
xlabel('时间(由符号间隔归一化)');
ylabel('|IFFT(u1(k))|');
title('IFFT(X1(k)),k=3,N=16,L=1,4');
legend('L=1','L=4');
PAPRdB_without_and_with_oversampling=[PAPRdB  PAPRdB_os];

PAPR_of_preamble.m

% PAPR_of_preamble.m
% Plot Fig. 7.10(b) (the PAPR of IEEE802.16e preamble)
%MIMO-OFDM Wireless Communications with MATLAB㈢   Yong Soo Cho, Jaekwon Kim, Won Young Yang and Chung G. Kang
%2010 John Wiley & Sons (Asia) Pte Ltd
clear, clf
N=1024; L=4; Npreamble=114; n=0:Npreamble-1; % Mod='BPSK'; 
%PAPR = zeros(N_preamble,1); PAPR_os = zeros(N_preamble,1);
for i = 1:Npreamble
   X=load(['D:\Work\MIMO-OFDM无线通信技术及MATLAB实现\MIMO_OFDM-master\第7章 PAPR\Chu序列和IEEE802.16e前导的PAPR\Wibro-Preamble\Preamble_sym' num2str(i-1) '.dat']);
   X = X(:,1); X = sign(X); X = fftshift(X);
   x = IFFT_oversampling(X,N); PAPRdB(i) = PAPR(x);
   x_os = IFFT_oversampling(X,N,L); PAPRdB_os(i) = PAPR(x_os);
end
plot(n,PAPRdB,'-o', n,PAPRdB_os,':*'), 
xlabel('前导编码[0~113]');
ylabel('|IFFT(X1(k))|');
title('IEEE 802.16e前导,L=1,4');
legend('L=1','L=4');

②、仿真结果

1) Chu 序列经 IFFT 之后的幅度

该图显示了在没有采样和 L=4 过采样的情况下,Chu 序列经过 16 点 IFFT 之后的幅度,有过采样和没有过采样的 PAPR 分别为 0dB 和 4.27dB,这说明不同的采样速度会导致 PAPR 具有明显的差异

2) IEEE 802.16e 前导的 PAPR

该图显示了 IEEE802.16e 标准中定义的 114 个前导的 PAPR,有过采样的PAPR比没有过采样的 PAPR 大 0.4dB 左右。事实上,由于前导码存在放大功率的问题,因此最初设计的这些前导码具有低的 PAPR。这就是为什么不同的采样速率并没有使这些序列的 PAPR 明显不同。然而,对于 Chu 序列,采样速率的不同通常导致 PAPR 的明显变化。因此,为了在基带对 PAPR 进行精确的测量,需要过采样过程。

5、基于限幅和滤波的 OFDM 信号

①、MATLAB 源码

mapper.m

function [modulated_symbols,Mod] = mapper(b,N)
% If N is given, it generates a block of N random 2^b-PSK/QAM modulated symbols.
% Otherwise, it generates a block of 2^b-PSK/QAM modulated symbols for [0:2^b-1].
%MIMO-OFDM Wireless Communications with MATLAB㈢   Yong Soo Cho, Jaekwon Kim, Won Young Yang and Chung G. Kang
%2010 John Wiley & Sons (Asia) Pte Ltd
M=2^b; % Modulation order or Alphabet (Symbol) size
if b==1, Mod='BPSK'; A=1; mod_object=comm.PSKModulator('ModulationOrder', M);
 elseif b==2, Mod='QPSK';  A=1;
      mod_object = comm.PSKModulator('ModulationOrder', M, 'PhaseOffset', pi/4);
 else Mod=[num2str(2^b) 'QAM']; Es=1; A=sqrt(3/2/(M-1)*Es); 
      mod_object = comm.RectangularQAMModulator('ModulationOrder', M, 'SymbolMapping', 'Gray');
end
if nargin==2 % generates a block of N random 2^b-PSK/QAM modulated symbols 
  modulated_symbols = A * mod_object(randi([0 M-1], N, 1));
 else
  modulated_symbols = A * mod_object((0:M-1)');
end

IFFT_oversampling.m

function [xt, time] = IFFT_oversampling(X,N,L)
%MIMO-OFDM Wireless Communications with MATLAB㈢   Yong Soo Cho, Jaekwon Kim, Won Young Yang and Chung G. Kang
%2010 John Wiley & Sons (Asia) Pte Ltd
if nargin<3,  L=1;  end
NL=N*L; T=1/NL; time = [0:T:1-T];  X = X(:).';
xt = L*ifft([X(1:N/2)  zeros(1,NL-N)  X(N/2+1:end)], NL);

add_CP.m

function y=add_CP(x,Ncp)
% Add cyclic prefix
%MIMO-OFDM Wireless Communications with MATLAB㈢   Yong Soo Cho, Jaekwon Kim, Won Young Yang and Chung G. Kang
%2010 John Wiley & Sons (Asia) Pte Ltd
y = [x(:,end-Ncp+1:end) x];     % CP 循环前缀

clipping.m

function [x_clipped,sigma]=clipping(x,CL,sigma)
% CL   : Clipping Level
% sigma: sqrt(variance of x)
%MIMO-OFDM Wireless Communications with MATLAB㈢   Yong Soo Cho, Jaekwon Kim, Won Young Yang and Chung G. Kang
%2010 John Wiley & Sons (Asia) Pte Ltd
if nargin<3
  x_mean=mean(x); x_dev=x-x_mean; sigma=sqrt(x_dev*x_dev'/length(x));   % 计算标准差
end
CL = CL*sigma;  % 限幅比 = 输入限幅比 × 标准差
x_clipped = x;  
ind = find(abs(x)>CL); % Indices to clip    % 找到大于限幅比的索引
x_clipped(ind) = x(ind)./abs(x(ind))*CL;    % 进行限幅


OFDM——PAPR减小(三)https://developer.aliyun.com/article/1473990

目录
相关文章
|
5天前
OFDM——PAPR减小(三)
OFDM——PAPR减小(三)
37 0
|
5天前
OFDM——PAPR减小(一)
OFDM——PAPR减小(一)
64 0
|
5天前
减小PAPR——DFT扩频
减小PAPR——DFT扩频
29 1
|
5天前
|
算法
m基于OFDM+QPSK和LDPC编译码以及MMSE信道估计的无线图像传输matlab仿真,输出误码率,并用图片进行测试
MATLAB2022a仿真实现了无线图像传输的算法,包括OFDM、QPSK调制、LDPC编码和MMSE信道估计。OFDM抗频率选择性衰落,QPSK用相位表示二进制,LDPC码用于前向纠错,MMSE估计信道响应。算法流程涉及编码、调制、信道估计、均衡、解码和图像重建。MATLAB代码展示了从串行数据到OFDM信号的生成,经过信道模型、噪声添加,再到接收端的信道估计和解码过程,最终计算误码率。
25 1
|
9月前
|
机器学习/深度学习 传感器 算法
【虚警检测】基于CA-CFAR(单元平均恒虚警)、GO-CFAR(最大选择恒虚警)、SO-CFAR(最小选择恒虚警)算法的恒虚警检测附Matlab代码
【虚警检测】基于CA-CFAR(单元平均恒虚警)、GO-CFAR(最大选择恒虚警)、SO-CFAR(最小选择恒虚警)算法的恒虚警检测附Matlab代码
|
8月前
|
算法 异构计算
m基于uw导频序列和cordic算法的基带数据帧频偏估计和补偿FPGA实现,包含testbench
m基于uw导频序列和cordic算法的基带数据帧频偏估计和补偿FPGA实现,包含testbench
76 2
|
10月前
|
算法 异构计算
m基于FPGA的带相位偏差QPSK调制信号相位估计和补偿算法verilog实现,包含testbench
m基于FPGA的带相位偏差QPSK调制信号相位估计和补偿算法verilog实现,包含testbench
307 0
|
8月前
|
算法 异构计算
m基于PN导频序列和cordic算法的基带数据帧频偏估计和补偿FPGA实现,包含testbench
m基于PN导频序列和cordic算法的基带数据帧频偏估计和补偿FPGA实现,包含testbench
70 0
|
9月前
|
算法 异构计算
m基于FPGA的多径信道模拟verilog实现,包含testbench,可配置SNR,频偏,多径增益和多径延迟
m基于FPGA的多径信道模拟verilog实现,包含testbench,可配置SNR,频偏,多径增益和多径延迟
194 0
|
9月前
|
机器学习/深度学习 传感器 算法
基于SVD BD ZF MF SLNR 多种算法模拟MIMO系统误码率和合速率随N的关系附matlab代码
基于SVD BD ZF MF SLNR 多种算法模拟MIMO系统误码率和合速率随N的关系附matlab代码